問題タブ [suds]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python+suds : xsd_base64Binary 型?
Soap API を使用して Jira にいくつかのファイルを添付しようとしています。Python 2.6 を使用していますが、SOAPpy が機能しなくなったため、suds を使用しています。添付ファイル以外はすべて問題ありません... このコードを書き直す方法がわかりません: http://confluence.atlassian.com/display/JIRA/Creating+a+SOAP+Client?focusedCommentId=180943#comment -180943
どんな手掛かり ?このような複雑な型を処理する方法がわかりません:
<complexType name="ArrayOf_xsd_base64Binary">
<complexContent>
<restriction base="soapenc:Array">
<attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:byte[][]"/>
</restriction>
</complexContent>
</complexType>
どうもありがとう
n.
django - suds-objectのキャッシング。Unicodeの問題
私はsudshttps : //fedorahosted.org/suds/を使用してSOAPを使用してデータをフェッチしています。データをフェッチしている場所からサーバーに過負荷がかからないように、(memcachedを使用して)結果をキャッシュしたいと思います。問題は、キャッシュされたデータをフェッチするときです。フェッチは正常に機能しますが、djangoはデータ(force_unicode)をデコードしようとし、次のように失敗します。
これは、結果をキャッシュするために使用するものです(ここで、result = suds-object)。cPickleを使用します(念のためにpickleを試しましたが、成功しませんでした)。
泡の応答はユニコードです。
python - このSUDS/SOAPの問題を解決するのを手伝ってもらえますか?
そのため、SUDSを使用してこのAPIhttps : //www.clarityaccounting.com/api-docs/にアクセスしようとしています。動作するはずのコードは次のとおりです。
しかし、私はこのエラーを受け取ります:
彼らのサポート担当者は、リクエストは次のようになるはずだと言っています。
しかし、SUDSは次のようになります。
私は本当のSOAPとSUDSの初心者ですが、ここから使用するのにSUDSが最適なSOAPライブラリであると聞きました。Python用にどのSOAPクライアントライブラリが存在し、それらのドキュメントはどこにありますか?
だから私の質問は、要求を失敗させている異なる重要な部分は何ですか?適切にフォーマットされた要求を送信するようにSUDSを構成するにはどうすればよいですか?
python - Pythonでsudsオブジェクトをシリアル化する
さて、私はPythonでより良くなるように取り組んでいるので、これが私が最初にやっていることを実行する正しい方法であるかどうかはわかりませんが、これが私の現在の問題です...
SOAPメソッドを介していくつかの情報を取得する必要があり、現在は情報の一部のみを使用しますが、将来の使用のために結果全体を保存します(サービスの使用はできるだけ少なくする必要があります)。私が考えたサービスにアクセスするための最良の方法を探すことは、行く方法であり、それは単純で、データを取得するための魅力のように機能しました。しかし今、私は結果をどうにかして保存したいと思います。後でそれを引き出して同じように使用できるように、できればシリアル化/データベースに保存します。
これを行うための最良の方法は何ですか、pickle / jsonはオプションではないように見えますか?ありがとう!
更新「泡の結果をピクルスにするにはどうすればよいですか?」 のトップアンサーを読んでください。なぜこれがオプションではないのかについてのより良いアイデアを私に与えてくれます、私は私が必要な情報で基本的なオブジェクトを再作成するのに行き詰まっていると思いますか?
python - SOAP、パイソン、サッド
Python で SOAP を操作するためのライブラリを教えてください。
今、私は "suds" を使用しようとしていますが、サーバーの応答から http ヘッダーを取得する方法を理解できません
コード例:
変数「login_res」には xml 回答が含まれており、http ヘッダーは含まれていません。しかし、私はそれらからセッションIDを取得する必要があります。
python - lxml で解析する前に、suds 出力から XML 宣言を削除する必要がありますか?
sudsライブラリを使用して、Python 2.6 で SOAP Web サービスを実装しようとしています。これはうまく機能していますが、出力をlxmlで解析しようとすると問題が発生しました。
Suds はsuds.sax.text.Text
、SOAP サービスからの応答でオブジェクトを返します。このsuds.sax.text.Text
クラスは、Python 組み込みUnicode クラスのサブクラスです。本質的に、これは次の Python ステートメントに匹敵します。
XML 宣言が正しい場合、コンテンツは UTF-8 でエンコードされているため、Python Unicode オブジェクトではないため、これは矛盾しています (UCS4 などの内部エンコーディングで格納されているため)。
lxml は、文書化されているように、これを解析することを拒否します。これは、どのエンコーディングとして解釈すべきかについて明確な答えがないためです。
私が見ているように、この束縛から抜け出す方法は 2 つあります。
- エンコーディング
<?xml>
を含む宣言を取り除きます。 - 指定されたエンコーディングを使用して、Suds からの出力をバイト文字列に変換します。
現在、Web サービスから受信しているデータは ASCII の範囲内にあるため、どちらの方法でも機能しますが、どちらも私には醜いハッキングのように感じられます。より広い範囲の Unicode 文字を必要とするデータを受信します。
良いアイデアはありますか?私がこの立場にいる最初の人だとは想像できません…</p>
python - WSDL ファイルで定義されていない SOAP ヘッダーを Python SUDS に渡す方法
ネットワークにカメラがあり、これに suds で接続しようとしていますが、suds は必要なすべての情報を送信しません。カメラがメッセージを理解できるように、WSDL ファイルで定義されていない追加の SOAP ヘッダーを配置する必要があります。すべてのヘッダーは SOAP エンベロープに含まれており、メッセージの本文に suds コマンドが含まれている必要があります。
suds のWeb サイト を確認したところ、次のようにヘッダーを渡すように指示されています: (これは要素をヘッダーとして渡しますが、エンベロープがあるため、これを入力する方法がわかりません)
さて、これをどのように実装するかわかりません。たとえば、次のヘッダーがあるとします。
これまたは同様の例を使用して、対象のサービスに有効な SOAP メッセージを渡す方法を知っている人はいますか?
ありがとう
python - 誰かがsoap.pyまたはsudsをpython-ntlmと組み合わせましたか?
アプリの現在の(ひどく破壊されて無愛想な)cURLベース(cURLコマンドラインベース!)のSOAPクライアントをsudsまたはsoap.pyに置き換えたいと思います。問題は、MS CRMサービスに連絡する必要があるため、NTLMを使用する必要があることです。さまざまな理由から、NTLMプロキシを使用するのは少し面倒なので、そのサポートを提供するためにpython-ntlmを調べています。
この認証方法を使用するためにsudsまたはsoap.pyを作成できますか?もしそうなら、どのように?そうでなければ、他の提案は素晴らしいでしょう。
編集
以下で説明するように、sudsはすぐにpython-ntlmをサポートしています。
python - Python suds を使用して Microsoft CRM に接続すると、接続エラー/タイムアウトが発生するのはなぜですか?
suds/python-ntlm を使用して MS CRM Web サービスに接続しようとすると、要求でタイムアウトが発生します。ただし、置き換えようとしているコード (cURL コマンド ライン アプリを呼び出して同じ呼び出しを行う) は成功します。
明らかに、cURL がコマンド データを送信する方法が異なりますが、その違いが何であるかを知っていれば、気が滅入るでしょう。以下は、さまざまな呼び出しの完全な詳細です。ヒントはありますか?
以下は、リクエストを行っているコードと、それに続く出力です。その下に cURL コマンド コードがあり、その応答が続きます。もちろん、無実の人を保護するために、ホスト、ユーザー、およびパスワードが変更されています。
出力は次のとおりです。
cURL コマンドは次のとおりです。
その cURL コマンドにパイプされるデータ:
応答は次のとおりです。