我使用代理缩短url使用Yourls,代理调用jquery ajax方法(GET)的url参数Yourls -api.php传递的是
http://localhost/webapp/default.aspx?x=499833&y=244716&resolution=1&layer=image&cc=uk
但是Yourls API忽略了来自第二个&号的查询字符串,即缩短后的url用
重定向http://localhost/webapp/default.aspx?x=499833
长url在传递给代理之前被编码。
不编码完整的查询字符串,只编码url参数的值解决了这个问题。
原来http://rishi.kb/yourls-api.php?signature=123456&action=shorturl&format=json&url=http://localhost/webapp/default.aspx?x=499833&y=244716&resolution=1&layer=image&cc=uk
老:http://rishi.kb/yourls-api.php?signature%3D123456%26action%3Dshorturl%26format%3Djson%26url%3Dhttp%3A%2F%2Flocalhost%2Fwebapp%2Fdefault.aspx%3Fx%3D499833%26y%3D244716%26resolution%3D1%26layer%3Dimage%26cc%3Duk
新:http://rishi.kb/yourls-api.php?signature=123456& action = shorturl& url格式= json& 3 = http % % 2 f % 2 flocalhost % 2 fwebapp % 2 fdefault.aspx % 3外汇% 3 d499833 % 26 y % 3 d244716 % 26决议% 3 d1 % 26层% 3 dimage % 26 cc % 3 duke energy