Response.Redirect вызывает загрузку SWF - PullRequest
1 голос
/ 20 февраля 2010

У меня есть слайдер с флэш-изображениями с кнопкой под каждым изображением. Когда я нажимаю эту кнопку, пользователь перенаправляется на новую страницу где я добавляю этот продукт изображения в свою корзину.

Проблема в том, что после добавления я хочу перенаправить пользователя обратно на начальную страницу.

Код:

protected void Page_Load(object sender, EventArgs e)
{
    addProductToBasket(getCategoryIdFromUrl(), getProductIdFromUrl());
    Response.Redirect(Request.UrlReferrer.ToString());
}

Обратите внимание, что в Firefox работает нормально, но в IE или Chrome он загружает SWF ... Если я комментирую Response.Redict (...), пользователь остается на этой странице, поэтому кнопка нажатия работает хорошо, только похоже, проблема в редиректе.

Есть предложения, пожалуйста?

Редактировать: Кажется, проблема в том, что Request.UrlReferrer сохраняет в качестве ссылки не начальную страницу, содержащую swf, а сам swf ....

Итак, вместо выполнения перенаправления на:

http://localhost:1336/Site/Index.aspx

if перенаправляет на swf, содержащийся на странице Index.aspx

http://localhost:1336/carousel/carouse.swf

Решено : с переменной сеанса, где я сохраняю URL начальной страницы

1 Ответ

0 голосов
/ 20 февраля 2010

Мне кажется, что это функция флеш-плеера, устанавливающего заголовок реферера по-разному в разных браузерах.

Если это так, то вам может потребоваться, чтобы флэш-проигрыватель получил URL-адрес страницы, на которой он размещен, и передал ее в качестве параметра на страницу, а затем перенаправил на содержимое параметра.

То, что, на мой взгляд, вам действительно следует делать, хотя регистрирует HttpHandler (реализация IHttpHandler) для URL, который выполняет обработку, и создает ответ, который возвращает JSON или XML, который Flash может легко проанализировать.

Таким образом, у вас нет перезагрузки страницы, и у вас есть беспроблемный опыт.

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