【问题标题】:rest request ending by "/" works on chrome, not firefox以“/”结尾的休息请求适用于 chrome,而不适用于 firefox
【发布时间】:2014-07-15 12:31:37
【问题描述】:

我正在使用 Angularjs Chrome 35.0 和 Firefox 30.0。 我需要向 API 发出 Rest 请求。 其中一些由/ 完成,例如:http://mydomain.com/path/to/folder/

没有这个 / 它将无法工作,而且我没有 API 的手。

为此,我使用 un service using resource :

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

【问题讨论】:

  • 这里的代码包含一系列语法错误。你能展示一些代码来说明你正在做什么来发出请求吗?
  • @chrisg :我忘了一行代码,添加它。
  • 这看起来更好,谢谢。有点奇怪,服务器对 URL 上的尾随 / 很敏感,但我想你不能改变它。在 URL 的末尾添加 /. 是否有帮助?我想知道这是否会使浏览器发送您需要的内容,以及服务器是否会处理它以根据需要执行创建操作。
  • 在 API 中尾随 / 时会发生什么?似乎不寻常需要一个。如果您控制 API,如果它导致问题,则在服务器上修复会更简单
  • 没有这个 / 就无法工作,而且我没有 API。

标签: javascript angularjs google-chrome rest firefox


【解决方案1】:

在 URL 末尾添加 . 将避免尾随 \ 被修剪。这是否能正常工作显然取决于服务器如何处理.,但如果你有一台服务器可以做你想做的事,那么它应该会有所帮助。

【讨论】:

    【解决方案2】:

    我同意上面的 cmets 网络服务不应该对 url 中的尾部斜杠敏感。

    但如果你真的想关闭自动 stripTrailingSlashes 行为,你可以像这样传递选项:

    this.folder = function(folderKey) {
        var methods = resource(url, null, {
            'create': {
                method: 'PUT',
                url: config.domain + folderPath + '\\/'
            }
        }, {
            stripTrailingSlashes: false
        });
        return methods;
    };
    

    编辑:此功能自 Angular v1.3.0-beta.6 起可用,但仍处于不稳定状态。

    【讨论】:

    • 这不会改变任何事情。
    • '\\/''\/''/' 均不适用
    • 你的 angular.js 版本是什么?
    • 我明白了,这个选项从 v1.3.0-beta.6 开始可用,还没有稳定版本。
    【解决方案3】:

    根据

    Recommended way of getting data from the server

    似乎人们建议对这种 url 使用 $http 而不是 ressource。

    【讨论】:

      猜你喜欢
      • 2013-03-02
      • 1970-01-01
      • 1970-01-01
      • 2018-09-08
      • 2014-11-17
      • 2015-06-09
      • 2011-08-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多