2017-11-14 12 views
0

pydocumentdbを使用して、ローカルで動作するAzure Cosmos DBエミュレータに接続しています。すべてpydocumentdbバージョン2.2.1を使用して正常に動作していました。私のIDEによって、pydocumentdbのバージョン2.3.0が利用できるようになったので、アップグレードしました。私は2017年2月22日に設定する必要がありますが、私はどのように変化および/または何を把握することはできません確信しているpydocumentdb 2.3 x-ms-versionヘッダーの問題

{"code":"BadRequest","message":"Invalid API version. Ensure a valid x-ms-version header value is passed.\r\nActivityId: 0e0acdab-8e0d-409e-b7fe-efec3bed3044"}

:私はエミュレータに接続しようとする今、私は次のエラーを受け取りますクライアントが何を送信しているか把握する。

+0

あなたは、Wiresharkのようなツールを使用して、HTTPヘッダーを検査してみましたか?それはあなたを助けるかもしれません。また、関連する情報を検索するのではなく、時間を費やすことができるように、あなたが行ったことについてもっと教えてドキュメントを追加することができればうれしいです。 – richerlariviere

+0

このエラーを生成するコードセクションを含めてください。また、pydocumentdbをアンインストールしてから2.2.1に強制的に再インストールして問題を確認しましたか? – SteveJ

+0

使用しているCosmosDBエミュレータのバージョンは? –

答えて

0

問題を再現しようとしましたが失敗しました。

マイpydocumentdbのバージョンは2.3.0です:

enter image description here

私の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) 

出力結果:

enter image description here

結果が正しく印刷されているようです。私の状況はあなたと違うのですか?関連コードの詳細を投稿してください。

さらに、Fiddlerを使用してHTTP要求メッセージをキャッチできます。


アップデート回答:

私は、Python 3.6.2を使用して手順をテストし、それはあまりにも正常に動作します。

enter image description here

enter image description here

+0

問題を引き起こすコードは同じですが、私はPython 3.6.2を使用しています。あなたが〜2.7を使用しているように見えますが、それが何かと関係しているかどうかはわかりません。私はフィドラーを見ていきます、ありがとう! – adub45north

+0

@ adub45north私の更新の回答をご覧ください。私はPython 3.6.2を使用していますが、それもうまく動作します。 –

+0

@ adub45northこんにちは、どんな進歩ですか? –

関連する問題