307重定向,Set-Cookie,在IE 11 ASP.NET中不起作用

时间:2014-12-17 16:20:43

标签: c# asp.net internet-explorer

在这里遇到一个奇怪的问题,我正在努力寻找解决方案。我将表单数据发布到第三方地址,获取响应,然后将Location和Set-Cookie标头添加到我自己的页面。这在chrome中工作正常,第三方根据需要找到cookie。 IE 11并不是那么好......在小提琴手中看到我可以看到的差异是Chrome在它的第三方页面上获取了cookie并且IE没有。

        //Get the response handle
        var webResp = (HttpWebResponse)webReq.GetResponse();

        //Add reponse headers and status code
        Response.StatusCode = 307; // redirect
        Response.Headers.Add("Location", "https://THIRD_PARTY_DOMAIN" + webResp.Headers["Location"]);
        Response.Headers.Add("Set-Cookie", webResp.Headers["Set-Cookie"]);

        // workarounds found online with no joy
        Response.Cache.SetNoStore();
        Response.Cache.AppendCacheExtension("no-cache");

        //Dispose of objects
        webResp.Close();
        webResp.Dispose();

任何帮助将不胜感激!

-T

1 个答案:

答案 0 :(得分:0)

解决。我最后在web响应中循环遍历headers集合,并在适当的时候将这些附加到我的Response.Headers。这个和清除浏览器缓存似乎解决了这个问题。