2011-10-27 11 views
5

  Esta debería ser una pregunta fácil, pero no he podido resolverla. Estoy tratando de cambiar el encabezado de referencia antes de redirigir la página de un objeto HttpResponse. Sé que esto se puede hacer en una HttpWebResponse, pero no puedo hacer que esto funcione para una respuesta de página estándar.
  Estoy tratando de establecer el encabezado del referer para que parezca que se originó a partir de una página temporal en mi sitio (esto es para el seguimiento analítico de un sistema externo).
  ¿Es esto posible?
  He intentado utilizar el código siguiente (así como variaciones como Response.AppendHeader y Response.AddHeader), sin embargo, el Referer siempre se muestra como la página desde la que se inició la Solicitud.Establecer el encabezado del Referer en asp.net

 Response.Headers.Add("Referer", "http://test.local/fromA"); 
     Response.Redirect(HttpContext.Current.Request.Url.AbsoluteUri); 

Si no es a través de .net ¿se puede lograr esto a través de js?
Gracias!

+0

Posible duplicado: http://stackoverflow.com/questions/243057/response-redirect-strips-header-referrer-possible-to-add-it-back – fardjad

Respuesta

6

Referer es controlado (y enviado) por el cliente. No puede afectarlo desde el lado del servidor. Puede haber JavaScript que pueda emitir que haga que el cliente lo haga, pero probablemente se considere una falla de seguridad, por lo que no contaría con él.

+0

Cambiar el referente utilizando JS también es una violación de seguridad. Por lo tanto, no está permitido en la mayoría de los navegadores. – theusguy

5

El referente lo establece el cliente, no el servidor. Es útil incluir en una solicitud y no en una respuesta, ya que apunta a la URL de donde proviene la solicitud.

Cuestiones relacionadas