zz:Android使用HttpPost向服务器发送Json数据
16lz
2021-01-26
Android使用HttpPost向服务器发送Json数据
客户端向服务器端发送数据,这里用到了两种,一种是在url中带参数,一种是json数据发送方式;
url带参数的写法:
?1 | url+/?r=m/calendar/contact_list&uid= 3 &&subscriptionslist[pageindex]= 10 &subscriptionslist[recordlimit]= 10 |
从“&”符号之后一连串都是参数。
发送方式代码编写:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | DefaultHttpClient httpClient = new DefaultHttpClient(); HttpPost httpPost = new HttpPost(HttpUtil.BASIC_URL + HttpUtil.SUBSCRIPTION_URL); try { if (cookie != null ) { // httpClient.setCookieStore(LoginJsonUtil.cookie); List new ArrayList 2 ); nameValuePair.add( new BasicNameValuePair( "uid" , uid)); nameValuePair.add( new BasicNameValuePair( "subscriptionslist[pageindex]" , subscriptionslist_pageindex)); nameValuePair.add( new BasicNameValuePair( "subscriptionslist[recordlimit]" , subscriptionslist_recordlimit)); httpPost.setEntity( new UrlEncodedFormEntity(nameValuePair)); |
传递参数使用nameValuePair。
如果使用cookie的话,使用上段代码中注释掉的部分
?1 | httpClient.setCookieStore(LoginJsonUtil.cookie); |
使用json数据格式发送信息向服务器端:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | HttpClient httpClient = new DefaultHttpClient(); try { HttpPost httpPost = new HttpPost(BASIC_URL + url); List new ArrayList JSONObject jsonObject = new JSONObject(); JSONObject jsonObject2 = new JSONObject(); jsonObject.put( "uemail" , userbean.getEmail()); jsonObject.put( "password" , userbean.getPassword()); jsonObject2.put( "userbean" , jsonObject); nameValuePair.add( new BasicNameValuePair( "jsonString" , jsonObject .toString())); Log.i( "lifeweeker" , jsonObject2.toString()); httpPost.setEntity( new UrlEncodedFormEntity(nameValuePair)); |
这里每个put的顺序我不清楚有没有规定,我是严格按照提供的前后顺序来组合json数据格式的。
所属分类: Android更多相关文章
- Android函数响应式编程——必学的RxJava组合操作符startWith、me
- android-market-api
- 数据存储之SharedPreferences存储——第一行代码Android学习笔记
- Bundle使用心得
- [转载]Android(安卓)ContentProvider和Uri详解 (绝对全面)
- android 用gpio作为pwm输出控制led背光
- cocos2d-js如何在android平台上使用js直接调用Java方法
- Android(安卓)编译重要参数 LOCAL_MODULE_TAGS
- 【技术直通车】Spatialite for Android编译及测试