【发布时间】:2015-08-16 21:42:22
【问题描述】:
我正在尝试使用 MongoLab Rest API http://docs.mongolab.com/data-api/ 更新 MongoDB 数据库中的文档。
在文档中,它说使用 PUT 请求来更新集合中的文档,并在 http 请求的正文中使用更新运算符。
因此,根据文档,我尝试以下操作:
urlinsert = 'https://api.mongolab.com/api/1/databases/ur_coursesniper/collections/classes?apiKey={key}&q={q}'
urlinsert = urlinsert.format(q=querycheck, key=CONFIG["key"])
form_fields = {
"$push" : { "Users" : email},
}
form_data = urllib.urlencode(form_fields)
result = urlfetch.fetch(url=urlinsert,
payload=form_data,
method=urlfetch.PUT,)
但是,在执行此代码块后,集合中的文档不会更新。
我收到的 HTTP 响应是
2015-08-16 10:55:45,129 module.py:812] default: "POST / HTTP/1.1" 200 91
这很令人困惑,因为它说响应既成功又是 POST。
对到底发生了什么有什么想法吗?
【问题讨论】:
标签: python google-app-engine urllib mlab urlfetch