WeChat, Weibo, QQ, estas son las aplicaciones móviles más utilizadas hoy en día. ¿Cómo podemos hacer productos sin estar relacionados con ellos? No creo que nadie quiera muchas cuentas y contraseñas para iniciar sesión, ¡así que no puedo recordarlas en absoluto!
Para aumentar la experiencia del usuario, los usuarios pueden registrarse rápidamente e iniciar sesión, y nace la necesidad de cuentas de terceros.
1. WeChat
1) El inicio de sesión de WeChat también es lo más complicado. Se necesitan 300 océanos para convertirse en una cuenta de desarrollador. No hay forma de que nadie haga que la base de usuarios de WeChat sea grande, por lo que tuve que admitirla. Luego, debe crear una aplicación del sitio web al iniciar sesión en el backend del sitio web, completar el dominio de devolución de llamada de autorización (el nombre de dominio del sitio web de inicio de sesión) y simplemente complete el nombre de dominio.
Dirección de la aplicación: https://open.weixin.qq.com/cgi-bin/index?t=home/index&lang=zh_cn
2) Verifique la interfaz proporcionada por WeChat y escriba el código Java
public void wx () {try {respuesta.sendedirect ("https://open.weixin.qq.com/connect/qrconnect?appid=" + sharelogindict.weixinkey.getstate () + "& redirect_uri =" + urlencoder.encode (sharelogindict.weixinurl.getState () +) "& Response_Type = Code & Scope = Snsapi_login & State = 66666#weChat_redirect"); } Catch (ioException e) {// tODO Auto Generated BLOCK E.PrintStackTRace (); }} @Override public dult userwx (string return_code) {resultado resultado = nuevo resultado (); 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"). toString (), token.get ("abreID"). TostSing ());); if (user! = null) {resultado.AddModel ("OpenID", user.get ("OpenID")); resultado.AddModel ("Nickname", user.get ("Nickname")); resultado.AddModel ("HeadImGurl", user.get ("HeadImGurl")); resultado.AddModel ("Data", "data_success"); } else {result.addModel ("data", "data_null"); }} else {resultado.AddModel ("data", "data_null"); } resultado de retorno; }Cuando el usuario inicie sesión a través de WeChat, llame a la interfaz WeChat para obtener la interfaz de usuario y regrese al OpenID, el apodo y el avatar de la terminal WeChat; Luego guarde esta información en la cookie del navegador. Cuando el usuario navega por otra información, distinga si el usuario se inicia con WeChat, el interceptor obtiene directamente la información del usuario de la cookie y muestra el apodo y el avatar, y al mismo tiempo determina si el OpenID está vinculado al usuario en la base de datos. Si no hay vinculación, el usuario solicita al usuario que se registre.
2. QQ Iniciar sesión
1) Aplicación de creación de Internet QQ
Antes de acceder a QQ Inicio de sesión, el sitio web debe aplicar primero para obtener el APPID y la aplicación correspondientes para garantizar que el sitio web y los usuarios puedan verificarse y autorizar correctamente en el proceso posterior.
Usos para APPID y AppKey
APPID: el identificador único de la aplicación. Durante el proceso de autenticación OAuth2.0, el valor de APPID es el valor de OAuth_Consumer_Key.
AppKey: la clave correspondiente a APPID, utilizada para verificar la legitimidad de la aplicación al acceder a los recursos del usuario. Durante el proceso de autenticación OAuth2.0, el valor de la aplicación es el valor de OAuth_consumer_Secret.
Dirección de la aplicación: http://connect.qq.com/intro/login/
2) Verifique la interfaz proporcionada por QQ y escriba el código Java
public void qq () {try {Response.sendedIrect ("https://graph.qq.com/oauth2.0/authorize?presponse_type=code&client_id=" + sharelogindict.qqkey.getstate () + "& redirect_uri =" + sharelogindict.qurl.getstate () +) "& Scope = get_user_info"); } Catch (ioException e) {// tODO Auto Generated BLOCK E.PrintStackTRace (); }} @Override public dult userqq (string return_code) {resultado resultado = nuevo resultado (); Map <string, object> token = (map <string, object>) qqapi .getToken (return_code); if (token! = null && token.get ("access_token")! = null) {map <string, object> tokenMe = (map <string, object>) qqapi .gettokokenMeopenID (token.get ("access_token"). toString ()); if (tokenMe! = null && tokenMe.get ("OpenId")! = NULL) {MAP <String, Object> User = (Map <String, Object>) Qqapi .getqquser (token.get ("access_token"). toString (), tokenMe.get ("openId"). tostessting ());; if (user! = null) {resultado.AddModel ("OpenID", tokenMe.get ("OpenID")); resultado.AddModel ("Nickname", user.get ("Nickname")); resultado.AddModel ("figuraurl", user.get ("figuraurl")); resultado.AddModel ("Data", "data_success"); } else {result.addModel ("data", "data_null"); }} else {resultado.AddModel ("data", "data_null"); }} else {resultado.AddModel ("data", "data_null"); } resultado de retorno; }Cuando el usuario inicie sesión a través de QQ, llame a la interfaz QQ para obtener la interfaz de usuario para devolver el OpenID, el apodo y el avatar del lado QQ; Luego guarde esta información en la cookie del navegador. Cuando el usuario navega por otra información, distinga si el usuario se inicia con WeChat, el interceptor obtiene directamente la información del usuario de la cookie y muestra el apodo y el avatar, y al mismo tiempo determina si el OpenID está vinculado al usuario en la base de datos. Si no hay vinculación, solicite al usuario que se registre.
3 Weibo Iniciar sesión
1) Cree una aplicación en Weibo
Dirección de la aplicación: http://open.weibo.com/authentication
2) Verifique la interfaz proporcionada por Weibo y escriba el código Java
public void wb () {try {respuesta.sendedirect ("https://api.weibo.com/oauth2/authorize?client_id=" + sharelogindict.weibeyy.getstate () + "& redirect_uri =" + sharelogindict.weibourl.getstate () + "& respuestas_type = codeect"); } Catch (ioException e) {// tODO Auto Generated BLOCK E.PrintStackTRace (); }} @Override public dult userwb (string return_url, string return_code) {resultado resultado = nuevo resultado (); 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"). toString (), token.get ("uid"). tostSing ());); if (user! = null) {result.addModel ("name", user.get ("screen_name")); resultado.addModel ("pic", user.get ("avatar_large")); resultado.AddModel ("idstr", user.get ("idstr")); resultado.AddModel ("Data", "data_success"); } else {result.addModel ("data", "data_null"); }} else {resultado.AddModel ("data", "data_null"); } resultado de retorno; }Cuando el usuario inicie sesión a través de Weibo, llame a la interfaz de Weibo para obtener la interfaz de usuario y regrese al IDSTR, el apodo y el avatar en el lado de Weibo; Luego guarde esta información en la cookie del navegador. Cuando el usuario navega por otra información, distinga si el usuario se inicia con WeChat, el interceptor obtiene directamente la información del usuario de la cookie y muestra el apodo y el avatar, y al mismo tiempo determina si el OpenID está vinculado al usuario en la base de datos. Si no hay vinculación, el usuario solicita al usuario que se registre.
Gracias por leer, espero que pueda ayudarte. ¡Gracias por su apoyo para este sitio!