2012-02-21 7 views
2

要求モジュールを使用してputを送信する際に問題があります。私は正常に取得し、Chrome用の高度なレストクライアントを使用してペイロードが正しいことを確認しました。しかし、私は悪い要求を送信するという一般的なエラーが出ます。私は、Webサービスの呼び出しに新しいですし、私は私がやっていることは完全に間違っているのかはわからないが、これは私がしようとしていますものです:Python Requests Module問題を入れてください

import requests 
payload = {'payload': '<request>some request xml</request>'} 
headers = {'content-type': 'application/xml'} 

r = requests.put('https://the.url', data=payload, auth=HTTPBasicAuth('user', 'password'), headers=headers) 

私はXML、URL、および資格情報が正しい100%を知って、なぜ上の仕事はできませんか?私が考えることができるのは、ペイロードの鍵は何か特定のものでなければならないということだけですが、それが正しいのか、それが何であるべきかを理解する方法がわかりません。

「HTTPステータス400 - 不正な要求」

答えて

2

Quick Start Guideにより掘り後、私はこの情報のTIDビットが見つかりました:

フォーム・エンコードされていないデータを送信したい多くの時間があります。 dictの代わりに文字列を渡すと、そのデータは直接ポストされます。

私はこれを元にしようとしましたが、明らかに私は誤植がありました。

にもかかわらず、辞書の代わりにストレートXMLを渡すと、問題が解決されました。

関連する問題