我正在使用pydocumentdb连接到本地运行的Azure Cosmos DB模拟器,所有这些都使用pydocumentdb版本2.2.1正常工作。我的IDE建议pydocumentdb版本2.3.0现在可用,所以我升级了它。现在,当我尝试连接到模拟器时,收到以下错误:
{"code":"BadRequest","message":"Invalid API version. Ensure a valid x-ms-version header value is passed.\r\nActivityId: 0e0acdab-8e0d-409e-b7fe-efec3bed3044"}
我非常确定应该设置为2017-02-22,但我无法弄清楚改变了什么和/或如何弄清楚客户端发送了什么。
答案 0 :(得分:0)
我尝试重现您的问题,但失败了。
我的pydocumentdb版本是2.3.0:
我的python代码:
import pydocumentdb;
import pydocumentdb.document_client as document_client
config = {
'ENDPOINT': 'https://localhost:8081',
'MASTERKEY': 'C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==',
'DOCUMENTDB_DATABASE': 'db',
'DOCUMENTDB_COLLECTION': 'testcoll'
};
# Initialize the Python DocumentDB client
client = document_client.DocumentClient(config['ENDPOINT'], {'masterKey': config['MASTERKEY']})
results = list(client.QueryDocuments('dbs/db/colls/testcoll', {'query': 'SELECT * FROM server s'}))
print(results)
输出结果:
似乎结果打印正确。我的情况与你的不同吗?请发布您的相关代码的详细信息。
此外,您可以使用Fiddler来捕获HTTP请求消息。
更新答案:
我使用Python 3.6.2测试这些步骤,它也可以正常工作。