перенаправление почтовых данных
-
19-09-2019 - |
Вопрос
Недавно я обновил страницу на нашем сервере с классического asp на asp.net.
Страница получает постданные и сохраняет их в файл.Эту страницу используют многие наши клиенты, и URL-адрес (страницы asp) жестко запрограммирован в их программном обеспечении.Это означает, что я не могу просто заменить старую страницу на новую.Я пытаюсь найти способ перенаправить клиентов со старого URL-адреса на новый.Я знаю, что вы можете выполнить простое перенаправление с помощью IIS, но это не приведет к перенаправлению постданных.Я попытался установить для файла временное перенаправление 307, это работает, когда данные находятся в formdata, но другие почтовые запросы, например, использующие библиотеку msxml, не работают.
По сути, мне нужно найти в IIS способ пересылать запрос на публикацию с одной страницы на другую, не теряя при этом ничего из тела.
Решение 2
Лучшим способом, который я нашел, было использование кода временного перенаправления в IIS, хотя это не работало для постданных, происходящих из библиотеки msxml.В конце концов мне пришлось написать библиотеку COM в .NET, чтобы выполнить тяжелую работу с использованием библиотек system.encoding, а затем ссылаться на библиотеку COM в asp.
Другие советы
Если две страницы находятся в одном приложении, вы можете использовать Server.Transfer.Это просто переносит обработку со старой страницы на новую и сохраняет все данные запроса.
Вы всегда можете запрограммировать (в asp.old) цикл, который проходит через все данные формы и вставляет запись со всеми значениями в базе данных.Затем вы перенаправляете пользователя на свою aspx-страницу, используя идентификатор строки в базе данных в качестве параметра строки запроса.Будьте осторожны, если данные формы конфиденциальны, чтобы применить некоторую защиту, чтобы пользователи не «украли» чужие данные, изменив строку запроса.
Ссылка на перенаправление (IIS 6.0)http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/41c238b2-1188-488f-bf2d-464383b1bb08.mspx?mfr=true