2

ドキュメントには簡潔な例が示されていますが、とにかくホップ/ペアが欠落しているように見えます。リモート サーバーにアクセスし、NTLM 通信を同様にパターン化するスクリプトをセットアップすると、次の出力が得られ
ます

無効なコードを受け取りました。
リモート接続の受け入れエラー。
メッセージ: 実行エラーが検出されました。クライアントを終了しています...
メッセージ: wcclient のすべてのインスタンスを終了しています...
接続先:
...

NTLM中心の3行をコメントアウトすると、私のシナリオはうまく機能します。コメントを外すと失敗します。WCAT クライアントはシナリオを解析できますが、正しく解析されているかどうかを確認するために解析メカニズムを実際に掘り下げたことはまだありません。

(複数のリモート クライアントからの接続を妨げるバグは既に修正済みですが、他にもある可能性があります。)

シナリオの関連部分は次のとおりです。

    request
    {
        url         = "http://weatherforecast-d/";
        statuscode  = 401;
    }

    request
    {
        url         = "http://weatherforecast-d/";
               // problems begin here...
          authentication = "ntlm";
          username = "my username";
          password = "my password";
        statuscode  = 200;
    }

誰かが WCAT NTLM スクリプトの実行中の機能的な例を持っていれば、私は大いに感謝しています。ありがとうございました。

wcat.wsf のログをクリーンアップし、多数の比較を行いました。これを行うためのより良い方法が必要ですが、私はそれを知りません。

  • 「認証」は解析しますが、他のパラメーター名は解析しません
  • 「ユーザー名」と「パスワード」だけでは致命的なエラーは発生しません
  • 単一のparm行「authentication」をコメントアウトすると、テストが実行されます
  • 同じ行のコメントを外すと、致命的なエラーが発生します
  • スクリプトの出力は、失敗するまでまったく同じです
  • basic または ntlm は、ガベージ テキストと同様に、同じ失敗を引き起こします。

問題は wcclient の奥深くに隠されているようです。別の製品を探し始める必要があると思います。

4

2 に答える 2

5

エラーはドキュメントにあります:

authentication = "ntlm";

次のようにする必要があります。

authentication = NTLM;

パラメータは dynstring ではなく、KEYWORD です。引用符は、パーサーを香りから遠ざけます。

これは回答としてマークしますが、まだ問題があります。現時点では、WCAT にサーバーからの 401 および 200 応答を認識させる正確なレシピを見つけることができません。401 の一部と 200 の一部を認識しますが、適切な数のクエリを適切な組み合わせで組み合わせて、すべてを認識させることはできません。

于 2009-02-18T19:04:41.740 に答える
0

トランザクションへのリクエストの外にポートを置くと、同じエラーが発生しました。ポートがリクエストの一部になると、エラーは消えました。

于 2010-10-12T20:39:04.323 に答える