2011-10-03 14 views
6

Chiunque utilizza il metodo Response.Redirect(), ha incontrato alcuni strani caratteri collegati alla fine dell'uri sulla barra degli indirizzi del browser?
Gli strani caratteri sono hash, trattino basso, segno di uguale e sottolineatura (senza spazi) come di seguito ... Non ho idea di cosa siano questi e quando questi strani caratteri appaiono, il reindirizzamento non è avvenuto correttamente.Strange # _ = _ vengono visualizzati alla fine dell'URL dopo response.redirect ASP.NET

#_=_ 

Eventuali approfondimenti su questo si prega di condividere. Grazie

+0

Potete fornire qualche codice? Inoltre, a quale browser vedi questo? –

+1

Per caso stai usando l'accesso facebook sul tuo sito? – Jeff

+0

sì, sto usando il login personalizzato di Facebook sul mio sito, in qualche modo è successo – FBLover2011

risposta

1

Qualcosa nel location-part di un URL che segue uno # fa riferimento a un ancoraggio nella pagina, in genere uno <a name=""> o <whatever id="">. Alcuni siti Web li usano (probabilmente con Javascript sul lato client) per eseguire la magia, ma dal momento che me lo stai chiedendo, ho la sensazione che non sia il tuo caso. Quindi, non c'è una vera rima o ragione per cui l'esistenza o l'assenza di quei personaggi in sé e per sé farebbero sì che il reindirizzamento funzionasse o meno. Infatti, non vengono nemmeno inviati al server nella richiesta HTTP (almeno, Firefox no).

Avete visto gli scambi di richieste HTTP quando questo sta accadendo? Qualcosa come Intestazioni HTTP Live, HttpFox o Firebug (guarda il pannello Rete) ti aiuterà con questo, e potrebbe indicarti da dove proviene l'errante #_=_.

1

Ecco la mia soluzione basata su un paio di altri là fuori:

$(function() { 
    if (window.location.href.indexOf("#_=_") > -1) { 
     //remove facebook oAuth response bogus hash 
     if (window.history && window.history.pushState) { 
      history.pushState('', document.title, window.location.pathname); 
     } else { 
      window.location.href = window.location.href.replace(location.hash, ""); 
     } 
    } 
}); 

https://stackoverflow.com/a/7845639/1467810

https://stackoverflow.com/a/15323220/1467810

https://stackoverflow.com/a/2295951/1467810