Response.Redirect nie działa w IE

0

Mam dość prostą stronkę, która w sumie jedyne co ma robić, to:

Response.Redirect(url);

Ten url jest do zupełnie innej strony.

Działa bez problemów na Chromie, nie działa w ogóle na IE. Wyświetla się tylko komunikat "Nie można wyświetlić tej strony". Gdy podglądam w narzędziach deweloperskich co się dzieje, to widzę normalnie nagłówek 302. Próbowałam też zamiast Response.Redirect robić to "ręcznie":
<code class="c#">
        HttpContext.Current.Response.StatusCode = 302;
        HttpContext.Current.Response.AddHeader("Location", url);
        HttpContext.Current.Response.AddHeader("Connectio‌​n", "close");

Niestety efekt jest dokładnie taki sam. Nagłówek Connection=close dodałam ze względu na sugestię gdzieś w google, że niby pomoże. Próbowałam również w ten sposób:

Response.Redirect(url, false);
Context.ApplicationInstance.CompleteRequest();

Zaktualizowałam też wersję frameworka do 4.5.
Niestety, bez poprawy.
0

Nie mam przy sobie IDE, żeby to sprawdzić, ale w MVC robi się:

return Redirect(url);

z poziomu akcji kontrolera.

0

@_Mateusz_ niestety nie mam tu MVC, nie ma żadnego kontrolera. Jest zwykła strona aspx, a Response.Redirect znajduje się w jej metodzie Page_Load.

0
Response.Redirect(url);
Response.End();
0
Mateusz napisał(a):
Response.Redirect(url);
Response.End();

Zupelnie bez sensu bo Response.Redirect bez drugiego parametru i tak wola wewnatrz Response.End.

@aurel a IE potrafi sie w ogole polaczyc z ta strona jak wklepiesz recznie do paska adresu ten url, ktory IE dostaje w Location?

0

Tak, strona docelowa wyświetla się w IE normalnie.

0

Z ciekawości spróbowałem powtórzyć ten błąd u siebie ale się nie udało. Ale tutaj jest trochę więcej informacji na temat tego błędu co prawda punkt 1. i 2. już próbowałaś może 3. pomoże http://www.telerik.com/blogs/how-to-get-your-asp.net-application-working-in-ie11

Można się też pokusić o porównanie headerów żądania z Chrome i z IE i sprawdzenie czym się różnią.

0

@DibbyDum, tak, trafiłam na tą stronę w moich poszukiwaniach... Co ciekawe, wykonanie tych kroków:

Press F12.
Click the Emulation button at the bottom left.
Choose Internet Explorer 9 from the dropdown list.
After the page refreshes, check to see if the page renders correctly.

Niczego nie zmienia, dalej wyświetla się błąd...
Ale dzięki za sugestię - jutro sprawdzę, czy na innych komputerach w sieci też występuje ten problem... Może to tak tylko u mnie się dzieje...

0

Ten url nie przekracza jakiegoś maxa dozwolonego dla IE?
IE może myśleć, że strona się nie zmieniła. Jesteś w stanie zrobić to przekierowanie po stronie klienckiej (window.location = cośtam)?

3

Ok, windows.location rzuca błędem "Nieprawidłowy argument" (na Chrome oczywiście działa normalnie). Okazuje się też, że Response.Redirect("http://wp.pl") działa! Czyli jednak coś jest nie tak z moim adresem...

Czy macie jakiś pomysł, co w nim jest nie tak? Zanonimizowany url: https://no.name.pl/#/abc/16798683/event#xyz(10)

Edit:
OMG, mój błąd był tak bardzo głupi, że aż ciężko to napisać...
Podawany url to jednak był: https:/no.name.pl/#/abc/16798683/event#xyz(10)

Po dodaniu drugiego slasha po protokole działa...
Nie mówmy o tym więcej -_-'

(Tak prawdę powiedziawszy, to strasznie nie podoba mi się fakt, że taki błąd uchodzi płazem na innych przeglądarkach...)

1 użytkowników online, w tym zalogowanych: 0, gości: 1