当前位置: 首页>>代码示例>>C#>>正文


C# Connection.SendServerErrorMessage方法代码示例

本文整理汇总了C#中System.Net.Connection.SendServerErrorMessage方法的典型用法代码示例。如果您正苦于以下问题:C# Connection.SendServerErrorMessage方法的具体用法?C# Connection.SendServerErrorMessage怎么用?C# Connection.SendServerErrorMessage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Net.Connection的用法示例。


在下文中一共展示了Connection.SendServerErrorMessage方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Authenticate

        public AuthenticateResult Authenticate(Server server, Connection connection, UserInfo userInfo)
        {
            // ニックネームとパスワードのチェック
            if (String.IsNullOrEmpty(userInfo.Nick))
            {
                return new AuthenticateResult(ErrorReply.ERR_NONICKNAMEGIVEN, "No nickname given");
            }

            // OAuth ログイン/設定
            if (String.IsNullOrEmpty(userInfo.Password))
            {
                connection.SendGatewayServerMessage("* OAuth 認証の設定を開始します...");
                return new OAuthContinueAuthenticationResult();
            }
            else
            {
                var config = Config.LoadConfig(userInfo.UserName); // HOSTING => 番号的 ID になる

                // xAuth fallback
                if (true && String.IsNullOrEmpty(config.OAuthUserPasswordHash))
                {
                    return new XAuthAuthentication().Authenticate(server, connection, userInfo);
                }

                connection.SendGatewayServerMessage("* アカウント認証を確認しています(OAuth)...");
                // OAuth 設定未設定
                if (String.IsNullOrEmpty(config.OAuthAccessToken) || String.IsNullOrEmpty(config.OAuthTokenSecret))
                {
                    connection.SendGatewayServerMessage("* OAuth 認証の設定を開始します...");
                    return new OAuthContinueAuthenticationResult();
                }

                // 設定してあるパスワードとの照合
                if (Utility.GetMesssageDigest(userInfo.Password) != config.OAuthUserPasswordHash)
                {
                    connection.SendGatewayServerMessage("* アカウント認証に失敗しました。ユーザ名またはパスワードを確認してください。");
                    return new AuthenticateResult(ErrorReply.ERR_PASSWDMISMATCH, "Password Incorrect");
                }

                // ユーザー認証問い合わせをしてみる
                try
                {
                    TwitterOAuth twitterOAuth = new TwitterOAuth(server.OAuthClientKey, server.OAuthSecretKey)
                    {
                        Token = config.OAuthAccessToken,
                        TokenSecret = config.OAuthTokenSecret
                    };
                    TwitterIdentity identity = new TwitterIdentity
                                                   {
                                                       Token = config.OAuthAccessToken,
                                                       TokenSecret = config.OAuthTokenSecret
                                                   };
                    TwitterService twitterService = new TwitterService(server.OAuthClientKey, server.OAuthSecretKey, identity);
                    User twitterUser = twitterService.VerifyCredential();
                    identity.ScreenName = twitterUser.ScreenName;
                    identity.UserId = twitterUser.Id;
                    connection.SendGatewayServerMessage(String.Format("* アカウント: {0} (ID:{1})", twitterUser.ScreenName, twitterUser.Id));

                    return new TwitterAuthenticateResult(twitterUser, identity);
                }
                catch (Exception ex)
                {
                    connection.SendServerErrorMessage(TwitterOAuth.GetMessageFromException(ex));
                    return new AuthenticateResult(ErrorReply.ERR_PASSWDMISMATCH, "Password Incorrect");
                }
            }
        }
开发者ID:argrath,项目名称:TwitterIRCGatewayOld,代码行数:67,代码来源:OAuthAuthentication.cs


注:本文中的System.Net.Connection.SendServerErrorMessage方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。