我想调用在其路径参数中有特殊字符的REST服务。其余的URL看起来像,
rest\fetchDetails\[1,2,3]
我使用$ HTTP像是刚刚调用它,
$http.get('rest\fetchDetails\[1,2,3]');
它不工作,当我调试使用Firebug它,我可以看到网址被作为
rest\fetchDetails\%5B1,2,3%5D
当调用$ http调用时,是否有任何方式发送'['和']'?
我想调用在其路径参数中有特殊字符的REST服务。其余的URL看起来像,
rest\fetchDetails\[1,2,3]
我使用$ HTTP像是刚刚调用它,
$http.get('rest\fetchDetails\[1,2,3]');
它不工作,当我调试使用Firebug它,我可以看到网址被作为
rest\fetchDetails\%5B1,2,3%5D
当调用$ http调用时,是否有任何方式发送'['和']'?
解决方案1:
尝试使用POST请求和POST请求通过PARAMS。
解决方案2:
'[]' 是对于特殊的URL字符。所以它会被编码。
如果你想解码这是你的服务器代码,你可以做到这一点。
您实际上正在发送'['和']',但是它们是url-encoded,$http.get
方法。 url编码是必须的,因为HTTP标准只允许一些字符(字母数字加一些)发送非url编码。
顺便说一句,我假设你的URL中的反斜杠()是正斜杠(/),否则它们也会被url编码。