我使用的是Angularjs Chrome 35.0和Firefox 30.0。
我需要向API发出Rest请求。
其中一些按/
完成,例如:http://mydomain.com/path/to/folder/
如果没有这个/它将无法工作。我没有掌握API。
为此,我使用资源使用un service:
this.folder = function(folderKey) {
var methods = resource(url, null, {
'create': {
method: 'PUT',
url: config.domain + folderPath + '\\/'
}
});
return methods;
};
如果我只提出/
或\/
,则在执行请求时,angular不会保留结尾/
。
'\\/'
是我发现保留它的唯一方法。
它在chrome中运行良好但在firefox中确实使这个url显然不起作用:http://mydomain.com/path/to/folder%5C
答案 0 :(得分:1)
在网址末尾放置.
可避免裁剪尾随\
。这一般是否有效将显然取决于服务器如何处理.
,但如果你有一台服务器可以做你想要的,那么它应该有所帮助。
答案 1 :(得分:0)
我同意上述评论,即网页服务不应对网址中的尾部斜杠敏感。
但是如果你真的想要关闭auto stripTrailingSlashes行为,你可以传递这样的选项:
this.folder = function(folderKey) {
var methods = resource(url, null, {
'create': {
method: 'PUT',
url: config.domain + folderPath + '\\/'
}
}, {
stripTrailingSlashes: false
});
return methods;
};
编辑:此特征自角度v1.3.0-beta.6起可用,但仍处于不稳定状态。
答案 2 :(得分:0)