1

我正在尝试将 yahoo BBA 与我的 Web 应用程序一起使用,但我总是因 yahoo 身份验证问题而失败。

这是我的奇怪代码:

YahooLogin.aspx.cs

protected void ImageButtonYahoo_Click(object sender, ImageClickEventArgs e)
{
    // Create an instance of Yahoo.Authentication  
    Yahoo.Authentication auth = new Authentication(strApplicationID, strSecret);
    // Redirect the user to the use sign-in page  
    Response.Redirect(auth.GetUserLogOnAddress().ToString());
}

和端点网址:BBAuth.cs

protected void Page_Load(object sender, EventArgs e)
{
    bool success = false;
    // Retrieve this user's authentication object we've stored in the session state  
    Yahoo.Authentication auth = Session["Auth"] as Yahoo.Authentication;

    if (auth == null)
    {
        // We have a problem with the current session, abandon and retry  
        Session.Abandon();
        Response.Redirect("ErrorPage.aspx");
    }
    // Check if we are returning from login  
    if (Request.QueryString["token"] != null && Request.QueryString["token"].Length > 0)
    {
        // Make sure the call is valid  
        if (auth.IsValidSignedUrl(Request.Url) == true)
        {
            success = true;
            // Save the user token. It is valid for two weeks  
            auth.Token = Request.QueryString["token"];
        }
    }

    // Redirect if we succeeded  
    if (success == true)
    {
        Response.Redirect("Default.aspx");
    }
    else
    {
        Response.Redirect("SignInError.aspx");
    }
}

Response.Redirect("ErrorPage.aspx");总是执行,有人可以告诉我我的代码中缺少什么。

谢谢,阮

4

1 回答 1

0

在 auth.token ="-----------------" 之后添加这个

auth.UpdateCredentials();

尝试这个。

于 2009-11-05T11:45:33.943 回答