休息请求以“0”结尾/"适用于chrome,而不是firefox
rest request ending by "/" works on chrome, not firefox
我使用的是Angularjs Chrome 35.0和Firefox 30.0。我需要向API发出Rest请求。/
的一些面漆如:http://mydomain.com/path/to/folder/
如果没有这个,它就不会工作/而且我没有API。
要做到这一点,我使用un-serviceusingresource:
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
在URL末尾放一个.
可以避免后面的'
被修剪。这是否能正常工作显然取决于服务器如何处理.
,但如果您有一个可以做您想要的事情的服务器,那么它应该会有所帮助。
我同意上面的评论,即web服务不应该对url中的尾部斜杠敏感。
但是,如果你真的想关闭自动stripTrailingStrips行为,你可以通过这样的选项:
this.folder = function(folderKey) {
var methods = resource(url, null, {
'create': {
method: 'PUT',
url: config.domain + folderPath + '''/'
}
}, {
stripTrailingSlashes: false
});
return methods;
};
编辑:此功能自angular v1.3.0beta版本6开始提供,该版本仍处于不稳定状态。
根据
从服务器获取数据的推荐方式
对于这种url,人们似乎建议使用$http而不是ressource。
相关文章:
- JQueryhide()不适用于Mozzilla,但适用于Chrome
- html5 drawImage适用于firefox,而不是chrome
- jQuery表单验证适用于Mozilla和Internet Explorer,但不适用于Chrome或Safari
- JS适用于Firefox和Safari,但不适用于Chrome.此处'是我的网站
- Regex不适用于Firefox,但适用于Chrome
- AngularJS$http.post没有'不适用于Chrome,仅适用于IE
- 关闭当前选项卡并打开一个新的-仅适用于Chrome
- 向下滚动时隐藏菜单,向上滚动时显示,适用于Chrome,不适用于Safari(手机)
- Mozilla并没有完美地执行这段代码,尽管它适用于Chrome和IE
- Angularjs ng-options 问题仅适用于 Chrome 浏览器
- 支持 JavaScript 的检查例程适用于 Chrome/Opera/IE,但不适用于 Firefox/Safari
- jQuery放大版不适用于Chrome和Safari,但适用于Firefox
- 如何调试遗留的javascript代码(适用于IE,但在Google Chrome中不正常)
- JavaScript调整iFrame大小-适用于Firefox/IE,但不适用于Chrome
- javascript单选按钮验证,适用于chrome,不适用于IE
- getElementsByTagName未保存(仅适用于chrome)
- 在KoGrid中使用knockoutjs不适用于Chrome或FF,但适用于IE8
- 在bookmarklet中使用@import和@font face(适用于Chrome,但不适用于Firefox)
- 聚合物不适用于Chrome(适用于Firefox)
- iFrame没有'不适用于Chrome(适用于FF、IE和Safari)