Android手机客户端与服务器端的信息通信交互

来源:互联网 发布:js正则判断数字范围 编辑:程序博客网 时间:2024/05/12 11:13

今天在进行项目开发的时候,设计到数据库数据与手机客户端界面显示与修改的问题,也即客户端与服务器端的数据通信问题。当然,这种通信是基于统一的数据格式(JSON,据说还有其他类型,暂且不管了)。手机客户端现在采用的是Java语言,但服务器端采用什么语言呢?服务器端简单理解就是PC机上的程序开发问题,可以采用JAVA、PHP、.net等等,只要能提供给客户端侧 JSON格式的数据就可以。因为之前一直在同步地学习PHP,所以后台就考虑用PHP。其实其他语言也是相通。

在网上搜了一圈的资料,自己慢慢对这块也有了了解。JSON格式的数据说到底还是可以理解为键值,只不过可以无限制地嵌入。对于客户端,数据传送给服务器端是通过:

params = new ArrayList<NameValuePair>();

params.add(new BasicNameValuePair("name", userName));//需要传递的参数:name

HttpEntity httpEntity = new UrlEncodedFormEntity(params, "utf-8");
//使用HttpPost类的setEntity方法设置请求参数
httpPost.setEntity(httpEntity);

……

此处省略http传递的一些代码,只是说明参数(name)的传递与接收。

客户发送到服务器端,php就通过$_POST['name']接收这一变量,这样就完成了客户端发送,服务器端接收的过程。

反过程:服务器端发送,手机客户端接收

php中用echo输出内容,如:

if($_POST['pwd']==$rs['password'])

{

echo "login succeed";

}

else

{

echo "error";

}

手机客户端接收:

//取出字符串

result=EntityUtils.toString(httpResponse.getEntity());

剥离出来就是这么一个传递过程。








0 0
原创粉丝点击