Chrome Dev Toolsは、「=」が含まれている場合、リクエストヘッダーに表示しながらフォームデータを切り捨てます。

StackOverflow https://stackoverflow.com/questions/7837462

質問

クエリ文字列のChrome Dev Toolsの完全なクエリパラメーターが「=」を含む完全なクエリパラメーターを見ることができません。それは「=」までのみ表示され、その後そこに切り捨てられます。

Firebugはそれを適切に示しています。ここに示されているAjaxスニペットのFirebugとChrome Devtoolsのスクリーンショットを見つけてください。

    var qstring = "Hello=Hai";

    $.ajax({
        type: 'POST'
        , url: "/cgi-bin/printenv.pl"
        , data: "query=" + qstring
        , dataType: 'xml'
        , timeout: 10000
        , success: function(jQuerySuccessData){
                    }
            });

Firebug shows the complete query parameter

Chrome dev tools doesn't show the complete query parameter

これで利用可能な回避策はありますか?

ありがとう、ナガキラン

役に立ちましたか?

解決

クエリ文字列をurlencodeする必要があります = 予約済みのキャラクターです。これを行う最も簡単な方法は、です escape JavaScriptの関数。反対側にもurldecodeを確認してください。

他のヒント

jQuery Ajaxは、デフォルトでcontentType: "Application/x-www-form-urlencoded"を使用します。

                $.ajax({
                    type: 'POST'
                    , url: (isCLI == false ? this.execUiQuery : this.execCli)
                    , data: qstring
                    , dataType: 'xml'
                    , contentType: 'text/plain'
                    , timeout: 10000
                  });

この設定をオーバーライデンし、Chrome DevtoolsでJavaScript編集を使用して「テキスト/プレーン」として設定し、完全なクエリ文字列を示しています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top