文档章节

android网络请求 post

粉饰太平
 粉饰太平
发布于 2016/01/21 12:06
字数 410
阅读 17
收藏 0

 最近刚了解网络请求post

  1. android-async-http-1.4.8.jar

AsyncHttpClient cilent;

cilent = new AsyncHttpClient();

.setOnClickListener(View.OnClickListener() {

    onClick(View v) {


// 登录监听事件
b_dl.setOnClickListener(new View.OnClickListener() {

    public void onClick(View v) {
        {
            RequestParams params = RequestParams();
            = .getText().toString();
            = .getText().toString();
            String pwd = MD5Util.();
            JSONObject jo = JSONObject();
            String deviceName = android.os.Build.+ + android.os.Build.;

            jo.put(, );
            jo.put(, pwd);
            jo.put(, );
            jo.put(, );
            jo.put(, deviceName);
            Log.(, Device.);

            jo.put(, Device.);
            jo.put(, Device.);

            StringEntity entity = StringEntity(jo.toString());
            requsetData(entity);
        } (Exception e) {
            e.printStackTrace();
        }

    }
});

requsetData(StringEntity params) {
    String url = ;
    .post(, url, params, , JsonHttpResponseHandler() {

        onSuccess(statusCode, Header[] headers, JSONObject response) {
            .onSuccess(statusCode, headers, response);
            {
                status = ;

                (response.has()) { status = response.getBoolean();
                }

                (status) {
                    Toast.(LoginActivity., , Toast.).show();

                    userid = ;
                    String username = ;
                    String token = ;
                    JSONObject jo = response.getJSONObject();
                    (jo.has()) {
                        userid = jo.getInt();
                    }
                    (jo.has()) {
                        username = jo.getString();
                    }
                    (jo.has()) {
                        token = jo.getString();
                    }
                    .edit().putInt(, userid).putString(, username).putString(, token).commit();

                    (.isChecked()) {
                        SharedPreferences.Editor editor = .edit();
                        editor.putString(, );
                        editor.putString(, );
                        editor.commit();
                    }
                    Intent intent = Intent(LoginActivity., MainActivity.);
                    LoginActivity..startActivity(intent);
                    finish();
                } {
                    String msg = ;
                    (response.has()) {
                        msg = response.getString();
                    }
                    Toast.(LoginActivity., msg, Toast.).show();
                }
            } (Exception e) {
                e.printStackTrace();
            }


        }

        onFailure(statusCode, Header[] headers, Throwable throwable, JSONArray errorResponse) {
            .onFailure(statusCode, headers, throwable, errorResponse);
            Toast.(LoginActivity., , Toast.).show();
        }
    });
}
接口[apiurl]为接口地址
3.1.1.登陆
用户调用登陆接口可以获取一个身份令牌,用于需要身份验证的接口调用。
url:
http://[apiurl]/base/logon
输入参数说明
username string 登录用户名
password string 密码密文,方法为md5
lon double 经度,double,-180~180,6位小数东经为正数,西经为负数,未获取到填0
lat double 纬度double,-90~90,6位小数,北纬为正数,南纬为负数,未获取到填0
devicemodel string 手机设备信息(MI 4C, IPHONE 5)
deviceversion String 手机系统版本(IPHONE OS-8.13, android 4.4.4)
devicename String 手机名称(我的iPhone, 我的小米)
*md5结果采用32位全大写格式
输出参数说明
token string 用户身份令牌,需要app记录每次请求都需要携带本参数,长度48字节
userid int 用户编号
username string 登录用户名 或者手机号


© 著作权归作者所有

上一篇: MD5
下一篇: 资料链接
粉饰太平
粉丝 1
博文 26
码字总数 7471
作品 0
闸北
程序员
私信 提问
Android中的几种网络请求方式详解

Android应用经常会和服务器端交互,这就需要手机客户端发送网络请求,下面介绍四种常用网络请求方式,我这边是通过Android单元测试来完成这四种方法的,还不清楚Android的单元测试的同学们请...

天高空
2011/12/29
4.8K
4
Android Fetch请求问题

前言 作为前端开发人员,网络请求工具对大家来说肯定不陌生。iOS的AFNetworking,Android的okHttp等。但是对于RN来说,我们最常用到的就是js原生的Fetch请求了。 React Native提供了和web标准...

浅夏晴空
2018/12/04
0
0
教你一步一步做无线点餐项目(登录篇)

原文链接:http://www.eoeandroid.com/thread-189017-1-1.html 项目名称:无线点餐系统客户端准备工具:Eclipse4.2(我是4.2的,你们可以3.5,3.6都没问题),ADT20,SDK20 服务端准备工具:Myec...

长平狐
2012/08/21
1K
0
教你一步一步做无线点餐项目(登录篇)

原文链接:http://www.eoeandroid.com/thread-189017-1-1.html 项目名称:无线点餐系统客户端准备工具:Eclipse4.2(我是4.2的,你们可以3.5,3.6都没问题),ADT20,SDK20 服务端准备工具:Myec...

长平狐
2012/08/09
5.6K
1
Android Volley框架的几种post提交请求方式

首先简单描述一下Google的Android开发团队在2013年推出的一个网络通信框架Volley.它的设计目标是进行数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,比如下载文件等,Volley的...

gaolu
2014/08/08
0
1

没有更多内容

加载失败,请刷新页面

加载更多

【AI实战】手把手教你深度学习文字识别(文字检测篇:基于MSER, CTPN, SegLink, EAST等方法)

文字检测是文字识别过程中的一个非常重要的环节,文字检测的主要目标是将图片中的文字区域位置检测出来,以便于进行后面的文字识别,只有找到了文本所在区域,才能对其内容进行识别。 文字检...

雪饼
今天
15
0
思维导图XMind 8 Pro 绿化方法(附序列号)

按部就班: Step 1 -全新下载最新版本的 Xmind 8(注必须是英文官方的版本,中文代{过}{滤}理网站的版本修改过,无法使用pj); Step 2 -安装完毕后,点击文末的下载按钮下载pj补丁文件包,将...

一只小青蛙
今天
10
0
数据结构(ER数据库)设计规范

表命名规范 表命名的规则分为3个层级,层级之间通过_分割,例如b_r_identity、d_l_identity。规约为: [leavel]_[type]_[name] [leavel] 表示数据库表的层级和功能,分为: s:业务无关的系统...

随风溜达的向日葵
今天
10
0
阿里Sentinel控制台源码修改-对接Apollo规则持久化

https://github.com/alibaba/Sentinel/wiki/%E5%9C%A8%E7%94%9F%E4%BA%A7%E7%8E%AF%E5%A2%83%E4%B8%AD%E4%BD%BF%E7%94%A8-Sentinel 动态规则扩展 https://github.com/alibaba/Sentinel/wiki......

jxlgzwh
昨天
14
0
在Linux系统中创建SSH服务器别名

如果你经常通过 SSH 访问许多不同的远程系统,这个技巧将为你节省一些时间。你可以通过 SSH 为频繁访问的系统创建 SSH 别名,这样你就不必记住所有不同的用户名、主机名、SSH 端口号和 IP 地...

老孟的Linux私房菜
昨天
14
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部