URL-адрес строки формы данных, закодированный некоторыми браузерами .net

я столкнулся с необычной проблемой на моем мобильном сайте. некоторые телефоны / шлюзы отправляют данные формы в виде URL-адреса и текста, например

"Эй, как ты?"

в форме с сообщением о методе

хранится в БД как

"эй + как + дела + ты% 3f"

Это проблема не для многих браузеров, а для одной сети из США под названием Metro. Я заметил, что разные модели телефонов действуют одинаково, поэтому предполагаю, что это проблема прокси / шлюза.

просто поставил бы

_msg = HttpUtility.UrlDecode (_msg);

решить мою проблему? любые другие предложения?

Спасибо


person nLL    schedule 19.10.2009    source источник


Ответы (1)


Вы бы не хотели, чтобы UrlDecode каждое сообщение. Это, например, сломало бы многие URL-адреса, которые люди могли бы публиковать.

Возможно, стоит добавить обходной путь, если вы можете обнаружить этот единственный шлюз во время запроса. Но если ошибка, о которой вы утверждаете, действительно происходит, я бы подумал, что она взломала бы намного больше веб-сайтов, чем только ваш; предположительно все параметры затронуты, и такие вещи, как идентификаторы, которые более хрупкие, чем текстовые сообщения, просто перестанут работать, если они неправильно экранированы. В конце концов, единственное исправление будет в конце «Метро»; ты пробовал с ними разговаривать?

person bobince    schedule 19.10.2009
comment
только небольшая часть пользователей имеет эту проблему, и я посоветовал им поговорить с их сетью. они не являются моими целевыми пользователями, и мобильный веб-сайт не является коммерческим. как я уже сказал, это не веб-сайт, и я подозреваю, что проблема возникает на wapgateway - person nLL; 19.10.2009