我正在尝试在couchdb中保存Backbone模型,所以我用ajax requet覆盖了savedb方法到couchdb:
$.ajax({
type: 'PUT',
url: 'http://127.0.0.1:5984/movies/' + this.get('id'),
contentType: 'application/json',
data: JSON.stringify(this.toJSON()),
success: function() {
console.log('asdf');
},
failure: function() {
console.log('test');
}
});
请求被发送但是当我查看couchdb日志时,jQuery似乎发送了一个OPTIONS HTTP方法而不是PUT:
[info] [<0.1601.0>] 127.0.0.1 – –
‘OPTIONS’ /movies/862 405
和couchdb发送405 HTTP响应代码(不允许使用方法).有任何想法吗?
编辑
以下是发送到CouchDB的标头:
OPTIONS /movies/862 HTTP/1.1
Host: 127.0.0.1:5984
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Origin: http://localhost:8888
Access-Control-Request-Method: PUT
Access-Control-Request-Headers: content-type
解决方法:
有一个用于couch-db .. https://github.com/janmonschke/backbone-couchdb的主干连接器
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。