Backbone.js 仅在Safari中保存400错误

Backbone.js 仅在Safari中保存400错误,backbone.js,http-status-code-400,Backbone.js,Http Status Code 400,我正在主干模型上调用save()。除了Safari和iOS上的Safari之外,我尝试过的每个浏览器的每个版本都可以使用它 在这两种浏览器中,调用失败,然后以400错误请求击中服务器。 调用看起来像。/common/User/ 我的用户型号如下: Backbone.Model.extend({ idAttribute: "UserId", initialize: function() { }, url: function () { var b

我正在主干模型上调用
save()
。除了Safari和iOS上的Safari之外,我尝试过的每个浏览器的每个版本都可以使用它

在这两种浏览器中,调用失败,然后以
400错误请求击中服务器。
调用看起来像
。/common/User/

我的
用户
型号如下:

Backbone.Model.extend({

    idAttribute: "UserId",
    initialize: function() {
    }, 

    url: function () {
        var base = 'common/User/';
        return (this.isNew()) ? base : base + this.id;
    },...
{"BrowserType":"Safari","BrowserVersion":5.1,"ApplicationPath":"index"}
我试图保存的信息如下所示:

Backbone.Model.extend({

    idAttribute: "UserId",
    initialize: function() {
    }, 

    url: function () {
        var base = 'common/User/';
        return (this.isNew()) ? base : base + this.id;
    },...
{"BrowserType":"Safari","BrowserVersion":5.1,"ApplicationPath":"index"}
我不知道我还能提供什么其他信息来帮助你

你知道为什么会这样吗

编辑 请求标头如下所示:

Accept:application/json, text/javascript, */*; q=0.01
Content-Type:application/json
Origin:http://localhost:1087
Referer:http://localhost:1087/index.html
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2
X-Requested-With:XMLHttpRequest

更新
User
model的
url
方法以包含尾部斜杠:

url: function () {
    var base = 'common/User/';
    return (this.isNew()) ? base : base + this.id + "/";
},

在我的主干项目中,我遇到了同样的问题——在Safari和Mobile Safari中,对特定型号的所有
POST
/
PUT
/
补丁的请求都失败了,尽管我在其他浏览器中没有问题。正如建议的那样,在我的模型的
url
方法中添加一个尾随斜杠解决了这个问题。

如果打开Webinspector,请求的url在标题中是什么?本地。。。最后用斜杠。。。(我不知道如何在这里逃避)无法复制错误。你能发布完整的请求标题吗?你用什么服务器?