我发了这些帖子。
the value of a query string parameter may not contain a '=' delimiter
它没有解决,但我可以通过你的帮助简化问题。
问题是
发送到Amazon SNS API的正确查询,包括'%3D'价值不是 正确编码
我制作了这样的超级简单剧本。
var xhrSNS = Ti.Network.createHTTPClient({
onload :function(e) {
Ti.API.info(this.responseText);
},
onerror : function(e){
Ti.API.info(this.responseText);
}
});
// Last letter of 'Signature' has %3D , encoded '='.
getUrl = "http://sns.ap-northeast-1.amazonaws.com?AWSAccessKeyId=AAAAAAA&Action=CreatePlatformEndpoint&PlatformApplicationArn=arn%3Aaws%3Asns%3Aap-northeast-1%3A776188326341%3Aapp%2FGCM%2Ftakiyamaar&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2016-04-03T15%3A27%3A57.482Z&Token=APA91bEiaB-902cRmwwgCwoqi2jRIJzzTIZNB7XduELuBKit_WF29tN5twrVW5t1BHpj07ARgwjzoc-I5xVur5K6I6ZQcnoErguUyi-VBHvuI5eY9HS4jq1J6KbIC05Etoe8indjpY9X&Version=2010-03-31&"
+ "Signature=3UAkSydWrJa%2BCbZAg2P491wc0lZKzTH%2FOw5Xnd8%2BzP8%3D";// %3D Is here
xhrSNS.open('GET',getUrl);
xhrSNS.send();
它回归。
查询字符串参数的值可能不包含' ='定界符
这意味着,%3D肯定是编码的,但亚马逊API将其视为=
这不会发生在iOS上。
我想知道
1.在Android或iOS之间的Ti.NetworkCreateHTTPClient.send()中存在一些差异吗?
2.与亚马逊API有关的东西??
如果您有任何提示,请告诉我一些信息。