Инструменты разработчика Chrome обрезают данные формы, показывая в заголовках запросов, если они содержат «=» - PullRequest
0 голосов
/ 20 октября 2011

Я не могу увидеть полный параметр запроса в инструментах Chrome Dev в строке запроса содержит "=".Он показывает только до "=" и усекает его после.

Firebug показывает это правильно.Пожалуйста, найдите скриншоты из firebug и chrome devtools для фрагмента ajax, показанного здесь.

    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

IsЕсть ли обходной путь для этого?

Спасибо, Нага Киран

Ответы [ 2 ]

1 голос
/ 20 октября 2011

Вам необходимо urlencode строки запроса, так как = является зарезервированным символом. Самый простой способ сделать это - функция escape в javascript. Удостоверьтесь, что вы urldecode и на другой стороне.

0 голосов
/ 20 октября 2011

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
                  });

Я переопределил этот параметр и установил его как «текст / обычный», используя редактирование javascript в chrome devtools и отображение полной строки запроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...