В ASP.NET, как я могу изменить данные POST, а затем перенаправить / POST их на другой URL? - PullRequest
1 голос
/ 17 марта 2012

У меня есть страница, которая отправляет некоторые данные POST в виде открытого текста на страницу aspx, которую я написал:

firstname: John
lastname: Doe
accountid: 123

Мне нужно взять эти данные POST и запустить их с помощью алгоритма шифрования, чтобы данные заканчивались какИтак:

firstname: AKFJULKHI
lastname: IDKLNZUI
accountid: RIQLKKNIC

После кодирования мне нужно отправить его на другую страницу aspx, которая ожидает эти закодированные данные.Я не могу изменить эту страницу.По сути, я пишу промежуточную страницу, цель которой состоит в том, чтобы взять некоторые незашифрованные данные, кодировать их, используя собственный алгоритм, и передать их на другую страницу, которая ожидает эти зашифрованные данные.Я понимаю, что это бесполезная функция безопасности, потому что пользователь знает, что это за данные до шифрования, но я не могу изменить другие страницы и должен придерживаться API.

Мой вопрос: какой самый простой способделая это?Response.Redirect преобразует его в запрос GET, а Server.Transfer не изменит URL на стороне клиента.Я мог бы сделать POST-запрос вручную, а затем выполнить Response.Write, но это выглядит как окольный способ сделать это.

Ответы [ 2 ]

2 голосов
/ 17 марта 2012

Я думаю, что вы можете подойти к этому с помощью модуля.HttpModule перехватывает запрос, может изменить запрос, а затем запрос продолжается до цели, и целевая страница не знает, что запрос был изменен.,

ref: http://www.codeproject.com/Articles/30907/The-Two-Interceptors-HttpModule-and-HttpHandlers#HttpModuletheeventbasedpreprocessor

0 голосов
/ 17 марта 2012

HTTP не поддерживает перенаправления POST.

Вместо этого вы можете отобразить простую страницу с HTML-формой, содержащей скрытые входные данные с вашими измененными данными и указав на новый URL, а затем автоматически отправить форму с помощью Javascript.

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