远控开发记录03_Http

原创 2016年08月29日 14:57:07

上一篇笔者讲到要将手机的位置信息发送到服务器并存入数据库。那么现在开始使用AsyncHttpClient来发送消息。
首先可以Google一下AsyncHttpClient包的下载地址,这是开源的。有很多方法下载。笔者就不多强调了。
那么你将包导入工程后,你可先阅读下面这篇文章。
http://www.cnblogs.com/angeldevil/p/3729808.html
了解完之后。也就是你应该知道怎么用post方式发送数据。至于发到哪里,也就是我们后台需要编写的内容,也就是我们需要用另外一个网址来代替上述博客中的www.google.com。
接下来就涉及到后台的编写了。
在phpstorm上创建项目。当然项目放在你配置的服务器本地目录。那么我们后台使用的语言是php。这里笔者选择thinkphp框架进行编写。首先了解一下thinkphp。http://www.thinkphp.cn/ 这是thinkphp的官网。ThinkPHP是一个快速、简单的基于MVC和面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,尤其注重开发体验和易用性,并且拥有众多的原创功能和特性,为WEB应用开发提供了强有力的支持。

这里写图片描述

下载下来将thinkphp包导入新建的工程。thinkphp采用mvc(模块(M),视图(V),控制器(C))的架构模式,有自己的开发手册。那么我们需要的是在thinkphp开发手册中讲解的控制器部分添加自己的控制器,如笔者添加文件testController.class.php。在文件中添加如下代码:

public function SetXY()
    {
        $phone = D('Phone');   //数据库phone表
        $data = $phone->create();//获取发送来的数据
        $Name['DeviceId'] = $_POST['deviceid']; //获取发送来的deciveid
        $user = D("user");  //数据库user表
        $userid = $user->field('No')->where($Name)->find(); //查询操作
        $data['userid'] = $userid['No'];
        $map['userid'] = $data['userid'];
        if ($re = $phone->field("No")->where($map)->find()) {
            $data['No'] = $re['No'];
            $phone->save($data); //修改操作
            echo $data['userid'] . "save";
        } else {
            $phone->add($data); //新增操作
            echo $data['userid'] . "add";
        }
    }

那么写到这里。你就可以把例子中www.google.com换成。localhost/home/test/setxy。解释一下。localhost是你的域名。这里指本地服务器。home指的是你的php项目,test就是你的项目中的控制器名。setxy就是上述的入口函数。
那么post函数中的url就可以修改成你任意想要的功能函数。param参数就是你需要发送的消息内容。如上述代码的DeviceId,你可以发送一个值。服务器通过$_post方式接收。而第3个参数AsyncHttpResponseHandler。就是监听服务器处理结果的回调函数。可以根据上述代码中echo的内容不同进行相应的操作。

整篇比较抽象。是需要一定基础的读者才能看懂。所以各位读者谅解。

我是搬运工,热爱我的热爱。

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

【远控编写03】客户端界面的设计和编写--列表的列宽度支持伸缩

1.1.CListCtrl  SetColumnWidth   查看MSDN BOOL SetColumnWidth( ...
  • ypist
  • ypist
  • 2013-02-12 23:04
  • 1078

iOS菜鸟开发记录(03)

大家好,今天又去复习了一下几个传值的方式,属性传值,代理传值,代码块传值,通知传值.目前常用的四种传值方式 首先是属性传值方式: 属性传值方式使用起来非常简单方便,我们只需要在push到下一个类的时候...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

http://www.cnblogs.com/waxdoll/archive/2006/03/12/348464.html

要分析一个比较大的数据库,里面的表太多了,虽然是中文命名,但在2005的Management Studio中查看还是比较麻烦,比如,我想查看具有相同字段名称的表的情况就不好办。于是用SMO写了这个东东...

编辑器之神vim交流学习——http://www.cnblogs.com/azheng007/archive/2012/07/03/vim.html

1.vim 是什么 2.vim与emacs 3.为什么要学习vim 4.常用的gui编辑器与vim对比 体现vim的优势 5.vim常用命令介绍 6.配合开发相关命令介绍...

http://www.cnblogs.com/bluestorm/archive/2012/03/02/2377615.html

转载:http://www.cnblogs.com/bluestorm/archive/2012/03/02/2377615.html 作者:petercao equals 方法是 java.la...

SQLiteDatabase类——转载(http://www.cnblogs.com/tt_mc/archive/2010/03/09/1681540.html)

SQLiteDatabase类实现数据库基本操作 数据库创建的问题解决了,接下来就该使用数据库实现应用程序功能的时候了。基本的操作包括创建、读取、更新、删除,即我们通常说的CRUD(C...

2009-12-03 10:34 HTTP请求错误400、401、402、403、404、405、406、407、412、414、500、501、502解析

HTTP 错误 400 400 请求出错 由于语法格式有误,服务器无法理解此请求。不作修改,客户程序就无法重复此请求。 HTTP 错误 401 401.1 未授权:登录失败 此错误表明传...

17 - 03 - 26 图解HTTP(30)

# Max-Forwards # 上图:每次转发数值减 1 。当数值变 0  时返回响应 通过 TRACE  方法或 OPTIONS  方法,发送包含首部字段 Max-Fo...

17 - 03 - 02 图解HTTP(06)

==压缩传输的内容编码: 向着待发送邮件内增加附件的时候,为了使邮件容量变小,我们会用ZIP压缩后发送。HTTP中的内容编码功能执行此操作。内容编码指明应用在实体内容上的编码格式。并保持实体信息原样压...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)