Общий обработчик не получает полную строку запроса - PullRequest
3 голосов
/ 12 августа 2011

Я пытаюсь передать некоторые значения из одной страницы .aspx в обработчик (.ashx). Я делал это с помощью переменной сеанса, но я понял, что это плохо работает на Firefox и Chrome, и я отказался от этой идеи и решил передать значения в строке запроса.

Я устанавливаю такой обработчик для функции init загрузки.

'uploader'  : 'js/uploadify.swf',
'script'    : 'UploadVarios.ashx?util_Id=' + $('#<%= util_Id.ClientID %>').val() + '&util_NomeColaborador=' + $('#<%= util_NomeColaborador.ClientID %>').val() + '&util_IdPosto=' + $('#<%= util_IdPosto.ClientID %>').val() + '&ValueEstadoUploadVarios=' + $('#<%= ValueEstadoUploadVarios.ClientID %>').val() ,
'cancelImg' : 'js/cancel.png',
...

Однако, когда я пытаюсь получить доступ к строке запроса в обработчике, доступен только первый параметр (в данном случае util_Id).

debug print screen

Я подумал, что может быть что-то не так с тем, как я конкатенировал строку, поэтому я сделал небольшой тест и изменил это на:

'uploader'  : 'js/uploadify.swf',
'script'    : 'UploadVarios.ashx?id1=0&id2=0',
'cancelImg' : 'js/cancel.png',
...

А вот и результат:

second print screen from debug

Что я делаю не так?

РЕДАКТИРОВАТЬ: добавлена ​​полная строка запроса

enter image description here

1 Ответ

3 голосов
/ 12 августа 2011

Просто предложение - попробуйте закодировать строку запроса, как показано ниже.

'uploader'  : 'js/uploadify.swf',
'script'    : 'UploadVarios.ashx%3fid1%3d0%26id2%3d0',
'cancelImg' : 'js/cancel.png',

Вероятно, это поможет. Если нет, вы всегда можете перейти к его декодированию с помощью HttpUtility.UrlDecode и получить набор значений ключа с помощью HttpUtility.ParseQueryString

...