3

次のように、suds を使用して Windows/WCF サービスを呼び出しています。


# Setting up my client
client = Client(wsdl, transport = my_transport, location = url, faults = True, headers = my_soap_action_header, cache = None, wsse = my_http_security)

そして、私は次のような応答を得ています:


(Link){ Id = 12345 Type = "SomeType" }

Web サービスの開発者と話をしたところ、戻り値は返されたオブジェクトの ID と型であることがわかりました。そうしないと、例外がスローされます。

そうは言っても、通常の http 応答コード (例: 200) について suds クライアントに問い合わせる方法を考えています。

4

1 に答える 1

5

これは古い質問だと思いますが、他の誰かがこれに出くわした場合に備えて、答えを提供します。

これでクライアントをセットアップするとfaults = False、エラーが発生したときに webFaults をスローしません (そのため、独自のエラー処理を実装する必要があります) 代わりに、次のタプルを返します

(<status>, <returned-value>)

たとえば(suds documentationから取得)

client = client(url, faults=False)
result = client.service.addPerson(person)
print result

( 200, person ...)

お役に立てば幸いです(ここを振り返ったことがあれば)

于 2011-11-29T11:32:12.273 に答える