2015-06-22 71 views
0

调用webservice的URL一个RESTful Web服务的URL总是害我一个404呼叫我的网址这样角JS调用带斜杠造成404

service.getAddress = function(address){ 
    var encodedSearch = encodeURIComponent(address) + "%5C"; 
    var args = { 
     'address': encodedSearch, 
     'callback': 'JSON_CALLBACK', 
     'language': $translate.use() 
    }, 
    params = (args.language + "/" + args.address + '?callback=' + args.callback); 
    return $http.jsonp(ADDRESS_LOOKUP_ENDPOINT + params); 
}; 

当我的地址字符串可以像“80/85大街“

URL看起来像

http://myurl.com/Service/api/findmyaddress/en/APARTMENT%203,86/88%20NARNIA%20ROAD,CALI%204%5C?callback=angular.callbacks._3 

译:encodeURIComponent正在转向 ”/“ 斜线到 ”%2F“,但它会导致404

我曾尝试不同的东西,即 “%252F”

而且还造成了404

回答

1

为什么不尝试encodeURI函数而不是encodeURIComponent?

+0

当你从浏览器访问url时,你能够得到响应吗?你可以粘贴你的完整网址进一步调查? – Mothupally

+0

像这样的东西http://myurl.com/Service/api/findmyaddress/en/APARTMENT%203,86/88%20NARNIA%20ROAD,CALI%204%5C?callback=angular.callbacks._3 – StevieB

+0

86/88正在使它跌倒 – StevieB

1

你可以尝试使用

是encodeURI()

以更好地处理您的请求

+0

仍然得到404,这是因为它是一个宁静的网址,并且不能在一个参数的值中包含“/”? – StevieB