重定向到页面时,不会调用page_load

时间:2013-06-12 20:13:31

标签: c# asp.net visual-studio-2010 intuit-partner-platform

在Intuit App Center中,当用户点击我的应用时,他们应该被发送到www.myweb.com \ OpenIdHandler.aspx。

Fiddler表示:

GET https://appcenter.intuit.com/app/b7nyqfscsm
302 Found to https://myweb.com/OpenIdHandler.aspx

CONNECT http://myweb.com:443
200 Connection Established ()

CONNECT http://myweb.com:443
200 Connection Established ()

GET https://appcenter.intuit.com/app/b7nyqfscsm
302 Found to https://myweb.com/OpenIdHandler.aspx

CONNECT http://myweb.com:443
200 Connection Established ()

CONNECT http://myweb.com:443
200 Connection Established ()

CONNECT http://myweb.com:443
200 Connection Established ()

GET https://myweb.com/OpenIdHandler.aspx
302 Found to /Default.aspx

GET https://myweb.com/Default.aspx
302 Found to /Login.aspx

GET https://myweb.com/Login.aspx
200 OK (text/html)

我在OpenIdHandler.aspx中启用了page_load的日志记录,没有任何内容被记录,所以我知道OpenIdHandler.aspx没有调用page_load。

如果我在登录页面登陆后https://myweb.com/OpenIdHandler.aspx(但未登录),所有工作都按预期进行(它表明我通过Intuit App Center / Intuit OpenID登录)。

问题:为什么不调用OpenIdHandler.aspx Page_load?

2 个答案:

答案 0 :(得分:2)

从fiddler输出看起来你没有登录,OpenIdHandler.aspx正在重定向(通过302 Found重定向)到Default.aspx,然后重定向到Login.aspx。

检查您的身份验证设置,如果OpenIdHandler.aspx需要授权,重定向将在页面上的任何代码执行之前发生。看起来您需要确保OpenIdHandler.aspx不需要授权。

答案 1 :(得分:0)

感谢你对这个模糊问题的猜测。

罪魁祸首在于Global.asax.cs:

    void Session_Start(object sender, EventArgs e)
    {
        // Code that runs when a new session is started
        Response.Redirect("Default.aspx"); //<--------------
    }

如果你发表评论,那么一切都很开心!