我正在尝试使用 Python 请求将数据发送到 Meteor 应用程序。我正在使用 meteor-collectionapi 来公开我的收藏。
我可以使用 CURL 来更新我的收藏,如下所示:
curl -H "X-Auth-Token: 3243EEREFADfdsafkjghk432hljsfDS3" -X PUT -d "{\"\$set\":{\"level\":\"32\"}}" http://localhost:3000/collectionapi/containers/WjyuFkRdmq78qyzR7`
我想使用请求在 Python 中执行相同的命令。这是我放在一起的代码:
import requests
import json
url = 'http://localhost:3000/collectionapi/containers/WjyuFkRdmq78qyzR7'
headers = {'X-Auth-Token': '3243EEREFADfdsafkjghk432hljsfDS3'}
payload = {'\$set':{'level':'43'}}
r = requests.post(url, data=json.dumps(payload), headers=headers)
当我运行它时,$set
没有正确传递并且 POST 无法正常工作(它在集合中创建一个新对象,而不是更新现有对象)。我已经尝试过各种方式来逃避它,但似乎没有什么能正常工作。如果我不逃避,$set
我会得到:
payload = {'$set':{'level':'38'}}
{"error":"Error: key $set must not start with '$'"}