gpt4 book ai didi

backbone.js - 仅在 Safari 中保存 400 错误

转载 作者:行者123 更新时间:2023-12-04 02:54:27 25 4
gpt4 key购买 nike

我打电话save()在 Backbone 模型上。这适用于我尝试过的每个浏览器的每个版本 除了 iOS 上的 Safari 和 Safari。

在这 2 个浏览器中,在使用 400 Bad Request 访问服务器之前调用失败。错误。
调用看起来像 ../common/User/
我的 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"}

我不确定我可以提供哪些其他信息来提供帮助。

任何想法为什么会发生这种情况?

编辑
请求 header 如下所示:
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模型url包含尾部斜杠的方法:

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

我在我的 Backbone 项目中遇到了同样的问题——所有 POST/ PUT/ PATCH对特定模型的请求在 Safari 和 Mobile Safari 中失败,尽管我在其他浏览器中没有问题。如 @mu is too short's comment建议,在我的模型的 url 中添加一个斜杠方法解决了这个问题。

关于backbone.js - 仅在 Safari 中保存 400 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11144026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com