我可以在parse.com上保存模型:
var persona=new Person({username:"filiberto",password:"filiberto"});
persona.save( {
success: function (persona) {
console.log("modello salvato nel db");
console.log(persona.url());
}
});
但如果我首先获取一个集合,获取一个指定的模型并通过save方法更新不起作用,错误是:PUT https://api.parse.com/1/classes/_User/V742NGMTjA 400(错误请求)
Models.utenti = new Usercollection();
Models.utenti.fetch({async:false});
var current_user=Models.utenti.get(Parse.User.current().id);
current_user.set_last_activity();
current_user.save();<----PUT https://api.parse.com/1/classes/_User/V742NGMTjA 400 (Bad
Request)
我已经尝试更新parse.com上的另一个类并且正常工作。我无法更新的课程是用户,也许是安全原因?
答案 0 :(得分:1)
我对Parse不熟悉,但根据他们的API(https://www.parse.com/docs/rest#users),用户请求应该是POST而不是PUT。 Backbone使用PUT来更新/同步模型,而POST则用于创建新模型。问题可能是Backbone假设您的模型已经保存并使用PUT方法进行更新。
Parse有一个很好的教程,用Backbone(https://parse.com/tutorials/todo-app-with-javascript)演示用户API。您可能还会发现有关保存和更新Backbone模型的讨论很有帮助(Backbone model.save() is sending PUT instead of POST)。
更新:Parse似乎需要跨域资源共享(CORS)来修改现有用户的数据。实际上,这意味着在请求标头中添加其他信息。有关详细信息和实施详细信息,请参阅下面评论中的Parse博客文章。