問題タブ [runscope]
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.
forms - PayPal への cURL の投稿は成功するが、HTML フォームの投稿と RunScope の投稿は失敗する
現在、PayPal の Payflow Pro Gateway との統合を開発中です。PayPal にリクエストを送信して、「セキュア トークン」を取得し、それを使用して実際の取引を行うことができます。SO で見つけたサンプルは cURL 経由で動作しますが、私が実行した元の HTML フォーム POST および RunScope テストは動作しませんでした。
cURL コマンドは次のとおりです。
cURL のドキュメントによると:
-k オプションは次のとおりです。
"(SSL) このオプションは、curl が「安全でない」SSL 接続および転送を実行することを明示的に許可します。デフォルトでインストールされた CA 証明書バンドルを使用して、すべての SSL 接続を安全にしようとします。これにより、「安全ではない」と見なされるすべての接続が失敗します。 、 --insecure が使用されています。」
-d オプションは次のとおりです。
"(HTTP) ユーザーが HTML フォームに入力して送信ボタンを押したときにブラウザーが行うのと同じ方法で、POST 要求で指定されたデータを HTTP サーバーに送信します。これにより、curl はデータをcontent-type application/x-www-form-urlencoded を使用するサーバー。-F、--form と比較してください。」
-d, --data は --data-ascii と同じです。データを純粋なバイナリで投稿するには、代わりに --data-binary オプションを使用する必要があります。フォーム フィールドの値を URL エンコードするには、--data-urlencode を使用できます。
これらのオプションのいずれかが同じコマンド ラインで 2 回以上使用された場合、指定されたデータは & 記号で区切られてマージされます。したがって、「-d name=daniel -d skill=lousy」を使用すると、「name=daniel&skill=lousy」のような投稿チャンクが生成されます。
文字 @ でデータを開始する場合、残りはデータを読み取るファイル名にする必要があります。または、curl に標準入力からデータを読み取らせたい場合は、. ファイルの内容は、すでに URL エンコードされている必要があります。複数のファイルを指定することもできます。したがって、「foobar」という名前のファイルからデータを投稿するには、--data @foobar を使用します。--data がそのようなファイルから読み取るように指示されると、キャリッジ リターンと改行が削除されます。
それはうまく機能し、次の応答を返します。
HTML フォーム POST
ただし、同じリクエストであると認識しているものは、次の HTML フォーム POST で失敗します。
これにより、FireFox で「接続がリセットされました」というメッセージが表示されます。
また、jQuery を使用して $.ajax() を使用してデータを POST しようとしましたが、データが含まれていない 200 応答を受け取りました。
ランスコープ
上記のパラメーターをRunScopeに入力すると、次のようになります。
意味がありません!
私は、PayPal がユーザー エージェントまたはリクエスト ヘッダーを調べて何かをしていると考えていましたが、本当の考えはありません。誰でもこの動作に光を当てることができますか?
request - Runscope を介してマルチパート/混合 HTTP POST 要求を送信する方法は?
RunscopeMultipart/mixed
を使用して Content-Type: で HTTP POST リクエストを送信したい。
ヘルプ/ガイダンスは素晴らしいでしょう。
node.js - Runscope – POST リクエストで JSON 本文を送信するにはどうすればよいですか?
Runscope を使用して Node/Express アプリをテストしていますが、Runscope で POST 要求を介して JSON 本文を送信する方法がわかりません。私が試したことはすべて、express bodyParser では解析できません。送信したい JSON は次のようになります。
xml - SOAP 応答を解析するための XPath
以下の SOAP 応答が与えられた場合、XPATH を使用して応答の内容のテスト/検証を行うにはどうすればよいでしょうか? 注: RunScope を使用して API をテストしています。
/soap:Envelope/soap:Body を使用して、有効な値を取得できます。「GetValidDataExtractResponse」ノードに何かが含まれているかどうか、「etValidRentalUnitIdsForExtractResult」ノードに X 個のアイテムが含まれているか、またはそのノードに特定の値が含まれているかどうかを判断できるようにしたいと考えています。
runscope - トリガー URL を使用してレスポンスボディからデータを取得する方法
トリガー URL を使用して、Runscopeで作成されたテスト ケースを実行しています。応答として、Runscope のドキュメントに示されている詳細のみを取得しています。たとえば。
応答サンプル データ:
しかし、リクエストのためにサーバーから取得したレスポンスボディのデータが必要です。
私は同じためにHttpRequest
andを使用しHttpResponse
ています。
javascript - Runscope 複合初期変数
テストの複雑な初期変数を初期化するにはどうすればよいですか。何かのようなもの:
javascript - すべてのリクエストの前に、runscope init タイムスタンプ変数を実行する
初期スクリプトを使用していくつかの変数を初期化しています。そのうちの 1 つは UTC タイムスタンプ接続値です。私のテストには 5 つのリクエストがあります。最初のリクエストは正しく実行されましたが、最後のリクエストは正しく実行されませんでした。これは、テストする API の時間接続変数の有効期限が切れているためです。私のAPIは時間に敏感であるため、最初のテストが実行されている間、この変数は期限切れです。
すべてのリクエストの前ではなく、すべてのリクエストの前にいくつかの変数を初期化できますか?
リクエストごとに個別のテストを作成できることはわかっていますが、それはクールではなく、それらすべてを 1 つのテストの下に保持したいと考えています。
ありがとう!