概述
詳細
一、前言
(1)適合人群
1,JAVA服務端開發人員
2,初級人員開發人員
3,了解spring springboot + maven
3,了解公眾號開發
(2)你需要准備什么?
1,積極主動學習
2,微信公眾號開發基本流程
3,java后端幾大框架掌握如(spring springboot maven mybatis)
二、前期准備工作
軟件環境:日食
官方下載:HTTPS://www.eclipse.org/downloads/
(1)基本需求
實現微信授權登陸帶參數獲取用戶基本信息
(2)項目目錄結構
三、實現步驟
(1)官方流程
網頁授權流程分為四步:
a、引導用戶進入授權頁面同意授權,獲取code
b、通過code換取網頁授權access_token(與基礎支持中的access_token不同)
c、如果需要,開發者可以刷新網頁授權access_token,避免過期
d、通過網頁授權access_token和openid獲取用戶基本信息(支持UnionID機制)
1.填寫授權回調頁面域名
進入測試公眾號,在體驗接口權限表中找到網頁帳號,右側添加自己的域名,測試公眾號可填寫本地IP,如你是正式公眾號只能填寫自己的域名,如果未填寫,當進行接口調用時,會提示:redirect_uri參數錯誤!如果還有其他不了解的配置,可以在開發文檔里查看詳信息,
2,下面展示訪問個人中心時,進行用戶授權
@RequestMapping("/weixinAutoLogin")
public void weixinAutoLogin(String userId,HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setHeader("Access-Control-Allow-Origin", "*");
/**
*這兒一定要注意!!首尾不能有多的空格(因為直接復制往往會多出空格),其次就是參數的順序不能變動
**/
String url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + AuthUtil.APPID +
"&redirect_uri=" + URLEncoder.encode(AuthUtil.Notify_url, "UTF-8") +
"&response_type=code" +
"&scope=snsapi_userinfo" +
"&state=" + userId +
"#wechat_redirect";
response.sendRedirect(url);
}
3,在微信打開地址測試 http://ib58jt.natappfree.cc/weixinAutoLogin?userId=1 如圖
4,用戶同意授權后
第一先請求 code:code作為換取access_token的票據,每次用戶授權帶上的code將不一樣,code只能使用一次,5分鍾未被使用自動過期。第二步通過剛請求來的 code去請求access_token和openid,第三部就是通過剛獲取的access_token和openid來請求用戶信息。
5,下面提供一個內網映射外網,軟件下載地址還有教程可以做公眾號開發
我用的是測試號沒有可以申請測試一些基本功能微信都有提供
官方鏈接:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login