使用openID进行身份验证,无需通过提供程序登

时间:2010-12-23 09:52:00

标签: c# asp.net dotnetopenauth myspace

我创建Web应用程序以连接到MySpace Offsite App,我想验证我使用了以下代码

var openid = new OpenIdRelyingParty();
            IAuthenticationRequest request = openid.CreateRequest("http://www.myspace.com/thabet084");
            request.AddExtension(new OAuthRequest("ConsumerKey"));
            request.RedirectToProvider();
            var response = openid.GetResponse();
            OAuthResponse oauthExtension = new OAuthResponse();
            if (response != null)
            {

                switch (response.Status)
                {
                    case AuthenticationStatus.Authenticated:
                        oauthExtension = response.GetExtension<OAuthResponse>();
                        var user_authorized_request_token = oauthExtension.RequestToken;
                        break;
                }
            }
             OffsiteContext context = new OffsiteContext("ConsumerKey", "ConsumerSecret");

            var accessToken = (AccessToken)context.GetAccessToken(oauthExtension.RequestToken, "", "");

我使用了以下引用DotNetOpenAuth.dll和MySpaceID.SDK.dll

我的问题是:

  1. 我总是发现responce = null
  2. 我不需要用户通过提供商MySpace登录,所以我需要删除RedirectToProvider();
  3. 我的应用程序简介是从mywebsite向MySpace帐户发送状态只需点击按钮发送

    欢迎所有想法

    BR, Mohammed Thabet Zaky

1 个答案:

答案 0 :(得分:1)

如果您不想对用户进行身份验证,那么OpenID根本就不是您想要的。事实上,OAuth可能也不是。如果您只是想将用户发送到MySpace以确认状态消息,那么您很可能只需使用Twitter制作的精心设计的URL即可 - 无需任何特殊协议或库。