• 微信、github登录开发(第三方登录)


    1.第三方登录流程

    (A)用户访问客户端,后者将前者导向认证服务器。

    (B)用户选择是否给予客户端授权。

    (C)假设用户给予授权,认证服务器将用户导向客户端事先指定的"重定向URI",同时附上一个授权 码。

    (D)客户端收到授权码,附上早先的"重定向URI",向认证服务器申请令牌。这一步是在客户端的后 台的服务器上完成的,对用户不可见。

    (E)认证服务器核对了授权码和重定向URI,确认无误后,向客户端发送访问令牌(access token)和 更新令牌(refresh token)。

    2第三方登录简单实用

    --登录微信开发平台注册

    --封装一个常量类,主要是第三方登录需要的参数(需要去第三方网站注册)

    public class WechatConstant {

    //请求code的URL
    public static final String CODE_URL = "https://open.weixin.qq.com/connect/qrconnect?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_login&state=STATE#wechat_redirect";

    //APPID
    public static final String APPID = "xxxx";

    //SECRET
    public static final String SECRET = "xxxx";

    //REDIRECT_URI
    public static final String REDIRECT_URI = "xxxx";

    --controller

    @Controller
    public class LoginController {

    @RequestMapping(value = "/login",method = RequestMethod.GET)
    public String login(Model model){
    String url = WechatConstant.CODE_URL.replaceAll("APPID",WechatConstant.APPID)
    .replaceAll("REDIRECT_URI",WechatConstant.REDIRECT_URI);//拼接地址

    model.addAttribute("authenUrl",url);
    return "forward:/login.jsp";
    }



  • 相关阅读:
    解析大型.NET ERP系统 20条数据库设计规范
    vi显示行号
    shell awk
    Linux使用Shell脚本实现ftp的自动上传下载
    MySQL Replication的Reset slave重置命令
    怎么样调整FreeBSD时区问题
    Basic Memory Structures
    States of Integrity Constraints
    Merging into a Table: Example
    oracle 单独开始一个事物的写法 。
  • 原文地址:https://www.cnblogs.com/wgyi140724-/p/10747514.html
Copyright © 2020-2023  润新知