WeChat、Weibo、QQ、これらは最近で最も一般的に使用されているモバイルアプリです。それらに関連することなく製品を作るにはどうすればよいですか?誰もがログインのために多くのアカウントとパスワードを望んでいるとは思わないので、それらをまったく覚えていません!
ユーザーエクスペリエンスを向上させるために、ユーザーはすばやく登録してログインでき、サードパーティのアカウントがログインする必要性が生まれます。
1。WECHAT
1)WeChatログインも最も難しいことです。開発者アカウントになるには300の海洋が必要です。誰もがWeChatユーザーベースを大きくする方法はないので、私はそれを認めなければなりませんでした。次に、WebサイトのバックエンドにログインするときにWebサイトアプリケーションを作成し、認証コールバックドメイン(ログインWebサイトのドメイン名)に入力し、ドメイン名に記入する必要があります。
アプリケーションアドレス:https://open.weixin.qq.com/cgi-bin/index?t=home/index&lang=zh_cn
2)WeChatが提供するインターフェイスを確認し、Javaコードを書きます
public void wx(){try {respons.sendredirect( "https://open.weixin.qq.com/connect/qrconnect?appid=" + shareLogindict.weixinkey.getState() + "&redirect_uri =" + urlencoder.encodedode(shareelogindict.weixinurl. "&Response_type = code&scope = snsapi_login&state = 66666#wechat_redirect"); } catch(ioException e){// todo auto-fenated catch block e.printstacktrace(); }} @Override public result userwx(string return_code){result result = new result(); map <string、object> token =(map <string、object>)weixinapi .gettoken(return_code); if(token!= null && token.get( "access_token")!= null){map <string、object> user =(map <string、object>)weixinapi .getwxuser(token.get( "access_token")。 if(user!= null){result.addmodel( "openid"、user.get( "openid")); result.addmodel( "nickname"、user.get( "nickname")); result.addmodel( "headimgurl"、user.get( "headimgurl")); result.addmodel( "data"、 "data_success"); } else {result.addmodel( "data"、 "data_null"); }} else {result.addmodel( "data"、 "data_null"); } return result; }ユーザーがWeChatを介してログインしたら、WeChatインターフェイスを呼び出してユーザーインターフェイスを取得し、WeChat端末のOpenID、ニックネーム、およびアバターに戻ります。次に、この情報をブラウザのCookieに保存します。ユーザーが他の情報を参照すると、ユーザーがWeChatでログインしているかどうかを区別します。インターセプターは、ユーザーの情報をCookieから直接取得し、ニックネームとアバターを表示し、同時にOpenIDがデータベース内のユーザーにバインドされているかどうかを決定します。バインディングがない場合、ユーザーはユーザーに登録を促します。
2。QQログイン
1)QQインターネット作成アプリケーション
QQログインにアクセスする前に、Webサイトは最初に適用して、対応するAppIDとAppKeyを取得して、ウェブサイトとユーザーをその後のプロセスで正しく検証および承認できるようにする必要があります。
appidとappkeyに使用します
APPID:アプリケーションの一意の識別子。 OAUTH2.0認証プロセス中、APPID値はOAUTH_CONSUMER_KEYの値です。
AppKey:AppIDに対応するキーは、ユーザーリソースにアクセスするときにアプリケーションの正当性を検証するために使用されます。 OAUTH2.0認証プロセス中、AppKey値はOAUTH_CONSUMER_SECRETの値です。
アプリケーションアドレス:http://connect.qc.com/intro/login/
2)QQで提供されるインターフェイスを確認し、Javaコードを書きます
public void qq(){try {response.sendredirect( "https://graph.qq.com/oauth2.0/authorize?response_type = code_code&client_id=" + shareLogindict.qqkey.getState() + "&redirect_uri =" + shareLogindict.tict. "&scope = get_user_info"); } catch(ioException e){// todo auto-fenated catch block e.printstacktrace(); }} @Override public result userqq(string return_code){result result = new result(); map <string、object> token =(map <string、object>)qqapi .gettoken(return_code); if(token!= null && token.get( "access_token") if(tokenme!= null && tokenme.get( "openid")!= null){map <string、object> user =(map <string、object>)qqapi .getqquser(token.get( "access_token")。 if(user!= null){result.addmodel( "openid"、tokenme.get( "openid")); result.addmodel( "nickname"、user.get( "nickname")); result.addmodel( "fighturl"、user.get( "fighturl")); result.addmodel( "data"、 "data_success"); } else {result.addmodel( "data"、 "data_null"); }} else {result.addmodel( "data"、 "data_null"); }} else {result.addmodel( "data"、 "data_null"); } return result; }ユーザーがQQを介してログインしたら、QQインターフェイスを呼び出してユーザーインターフェイスを取得して、QQ側のOpenID、ニックネーム、およびアバターを返します。次に、この情報をブラウザのCookieに保存します。ユーザーが他の情報を参照すると、ユーザーがWeChatでログインしているかどうかを区別します。インターセプターは、ユーザーの情報をCookieから直接取得し、ニックネームとアバターを表示し、同時にOpenIDがデータベース内のユーザーにバインドされているかどうかを決定します。バインディングがない場合は、ユーザーに登録を促します。
3 weiboログイン
1)Weiboでアプリケーションを作成します
アプリケーションアドレス:http://open.weibo.com/authentication
2)Weiboが提供するインターフェイスを確認し、Javaコードを書きます
public void wb(){try {response.sendredirect( "https://api.weibo.com/oauth2/authorize?client_id=" + shareLogindict.weibokey.getState() + "&redirect_uri =" + shareelogindict.weibourl.getState() + " } catch(ioException e){// todo auto-fenated catch block e.printstacktrace(); }} @Override public result userwb(string return_url、string return_code){result result = new result(); map <string、object> token =(map <string、object>)weiboapi.gettoken(return_url、return_code); if(token!= null && token.get( "access_token")!= null){map <string、object> user =(map <string、object>)weiboapi .getwbuser(token.get( "access_token")。 if(user!= null){result.addmodel( "name"、user.get( "screen_name")); result.addmodel( "pic"、user.get( "avatar_large")); result.addmodel( "idstr"、user.get( "idstr")); result.addmodel( "data"、 "data_success"); } else {result.addmodel( "data"、 "data_null"); }} else {result.addmodel( "data"、 "data_null"); } return result; }ユーザーがWeiboを介してログインしたら、Weiboインターフェイスに電話してユーザーインターフェイスを取得し、Weibo側のIDSTR、ニックネーム、アバターに戻ります。次に、この情報をブラウザのCookieに保存します。ユーザーが他の情報を参照すると、ユーザーがWeChatでログインしているかどうかを区別します。インターセプターは、ユーザーの情報をCookieから直接取得し、ニックネームとアバターを表示し、同時にOpenIDがデータベース内のユーザーにバインドされているかどうかを決定します。バインディングがない場合、ユーザーはユーザーに登録を促します。
読んでくれてありがとう、私はそれがあなたを助けることができることを願っています。このサイトへのご支援ありがとうございます!