首页 新闻 会员 周边 捐助

android oauth1.0接口认证

0
悬赏园豆:50 [已关闭问题] 关闭于 2016-12-12 10:26

我通过接口请求数据时,用到了oauth1.0的认证。 (  把所有的请求参数包括POST方法体中的参数,经过排序(按参数名进行文本排序,如果参数名有重复则再按参数值进行排序),使用%3D替代=号,并且使用%26作为每个参数之间的分隔符,每个参数的参数值通过RFC3986定义的url编码方式进行编码(其与PHP中的urlencode所实现的url编码方式的区别在于,RFC3986要求将空格编码为%20,而不是+,同时不会将~编码为%7E),拼接成一个字符串。)

我再网上看到这句话,但是当我现在的接口参数是json字符串,  如果我的json带空格,认证就不通过;如果去掉空格,就没这问题。  这是咋回事啊。 参数已经被编码了,按道理应该没问题啊。

威廉姆斯·苑的主页 威廉姆斯·苑 | 初学一级 | 园豆:125
提问于:2016-12-11 21:12
< >
分享
所有回答(1)
1

URLEncoder.encode(string, "UTF-8");  编码后,空格会编码成+号,这个和后台是不一致的, 所以只需要把+替换成%20 就可以了

威廉姆斯·苑 | 园豆:125 (初学一级) | 2016-12-12 10:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册