安卓网络请求‘参数怎么设置

  介绍

这篇文章给大家分享的是有关安卓网络请求‘参数怎么设置的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Android是什么

Android是一种基于Linux内核的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由美国谷歌公司和开放手机联盟领导及开发。

最近做项目,碰着一个奇怪的请求,后台说在调用接口之前需要验证签名和有效时间,当场就懵逼了,要生成一个签名签名,下面来说说怎么做

首先说说大致思路:标志的生成:按照规则来是键值对的形式(键=值),拼接的时候按照关键=value&键=值(注意:关键:后台所需的参数名,值:前台所获取到的值),时间=系统所获取的时间,盐=fangzhou(这个参数按照后台要求),而后进行urlencode编码(Java中有方法),下一步进行MD5加密,如果需要将加密后的值全部转化为大写(小写),Java中有方法直接调用即可。

接下来说说具体怎么实现:

<强> 1。请求数值的拼接(键=value&键=值):

String  name =,“宋小宝“;   String  address =,“东北“;   String  panameter =,“name=?, name  +,“和,address =,“+地址;

<强> 2。在请求数值的拼接字符串后面加上时间戳和特定值(根据后台要求来)

//获取系统时间戳   Date  dt=, new 日期();   Long 时间戳=,dt.getTime ();   String  signText =, panameter  +“,时间=? timeStamp  +,“和盐=fangzhou"

<强> 3。拼接完成后,对signText进行urlencode编码

try  {   ,String  urlencoderText =, URLEncoder.encode (signText,“utf-8");   },catch  (UnsupportedEncodingException  e), {   ,e.printStackTrace ();   }

注:这里会抛出一个异常,直接试就可以了,这只是一个Java方法直接调用就完毕了

<强> 4。然后进行md5加密

//md5加密
字符串md5Text=md5 (urlencoderText);

md5加密的方法了,网上有,直接c、v就好了;

如果要对加密后的值,字母全部转化为大写(小写)直接这样:

//md5加密
字符串md5Text=md5 (urlencoderText) .trim () .toUpperCase ();

注:这是转化为大写的方法(小写的方法:直接在字符串后面这样加就可以了

.trim () .toLowerCase ();

这样就可以了;但是你以为这样就完了吗?哥们儿,你想的太简单了;下面才是最坑…的时候,怎么形容了,直接上代码吧!

首先说明一点我用的xutils请求框架(具体怎么用我就不说了,相信大家都会用的——中国的程序猿是最棒的);

//设置请求地址   时间=params  new  RequestParams (url);//添加请求参数   params.addBodyParameter (“name"、名称);   params.addBodyParameter (“address"、地址);//- - -添加时间戳- - - - - -   params.addBodyParameter (“time"、时间戳+““);//加密的参数‘   params.addBodyParameter (“sign" md5Text );

看见没有,没有进行转码的请求参数,照样去添加,一个都不能少,反而还多了一个时间戳的参数,但是注意我上面加密了盐请求参数,这里没有添加! !在最后面添加了转码加密后的请求参数‘

而后就用正常的发请求的流程就可以啦,,就是这样——完美

总之一句话——先拼接,后转码,再加密——再发请求

<>强补充知识: <强>浅谈URL参数的签签名认证

以下内容是参考别人的博客内容整理,如有不足之处,敬请指正…

大家先思考一个问题:你在写开放的API接口时是如何保证数据的安全性的?

先来看看有哪些安全性问题在开放的API接口中,我们通过http Post或者得到方式请求服务器的时候,会面临着许多的安全性问题,例如:

1。请求来源(身份)是否合法?

2。请求参数被篡改?

3。请求的唯一性(不可复制)

<>强解决方案:为了保证数据在通信时的安全性,我们可以采用参数签名的方式来进行相关验证。

<强>案列分析

我们通过给某(移动端(app)]写[后台接口(api)]的案例进行分析:

客户端:以下简称应用

后台接口:以下简称api

我们通过应用查询产品列表这个操作来进行分析:

应用中点击查询按钮==返饔胊pi进行查询==贩祷夭檠峁?=祝辞显示在应用中

安卓网络请求‘参数怎么设置