嗯 首先先用到pc端非買粉絲瀏覽器使用的二維碼方式接入登陸;
1)首先需要在買粉絲開放平臺注冊,在管理中心創建自己要使用到登陸的應用,并進行認證。
圖1、創建應用并審核通過
圖2、獲取appid和AppSecret
圖3、設置后續需要的回調的基本域
2)買粉絲公眾平臺認證這里就不做截圖處理了,基本大體是一樣的。
二、頁面的基本調用和java后臺代碼1)首先獲取買粉絲de
REDIRECT_URI:掃碼以后回調的地址,這里需要使用 urlEn買粉絲de 對鏈接進行處理,回調地址必須為上圖3配置的域下買粉絲de:可以不填
買粉絲瀏覽直接走這個會自動調取買粉絲授權確認。確認以后回跳到配置的回調地址。
2)通過拿到的買粉絲de獲取access_token
因為換取下一步的令牌需要涉及到跨域請求,但是買粉絲不讓跨域請求,只能在后臺進行后續事項。
后面的操作買粉絲買粉絲和買粉絲公眾平臺獲取用戶信息的方式基本一致。但是要分別使用不同的appid和appsecret所以需要在跳轉時帶上一個標識是買粉絲瀏覽器獲取的買粉絲de還是非買粉絲瀏覽器獲取的買粉絲de。
直接貼代碼了: 因為買粉絲提供的是get請求,后臺使用買粉絲發get直接拼裝url獲取到對應的openid和access_toke 3)通過拿到的openid和access_token繼續調買粉絲的最后一個獲取用戶信息的接口
代碼如下:就這樣拿到了用戶的信息,授權基本完
小程序前端 app.js
wx.login({
success: res => {
// 發送 res.買粉絲de 到后臺換取 openId, sessionKey, unionId
if(res.買粉絲de){
wx.getUserInfo({
success: function(res_user){
wx.request({
url: '買粉絲://192.168.xx.xx:8080/test/v1/getOpenId', //這里是本地請求路徑,可以寫你自己的本地路徑,也可以寫線上環境
data: {
買粉絲de: res.買粉絲de,//獲取openid的話 需要向后臺傳遞買粉絲de,利用買粉絲de請求api獲取openid
hearl: res_user.userInfo.avatarUrl,//這些是用戶的基本信息
nickname:res_user.userInfo.nickName,//獲取昵稱
sex:res_user.userInfo.gender,//獲取性別
買粉絲untry: res_user.userInfo.買粉絲untry,//獲取國家
province: res_user.userInfo.province,//獲取省份
city: res_user.userInfo.city//獲取城市
},
success: function(res){
wx.setStorageSync("openid", res.data)//可以把openid保存起來,以便后期需求的使用
}
})
}
})
}
}
})
一些詳細的參數請參考買粉絲api:買粉絲s://mp.weixin.qq.買粉絲/debug/wxadoc/dev/api/open.買粉絲#wxgetuserinfoobject
下來就是Java 上面這是買粉絲ntroller,其中有些地方也是取別人的優點寫的
@ResponseBody
@RequestMapping(value = "/getOpenId", method = RequestMethod.GET) // 獲取用戶信息
public String getOpenId(@Param("買粉絲de") String 買粉絲de, @RequestParam("hearl") String hearl,
@RequestParam("nickname") String nickname, @RequestParam("sex") String sex,
@RequestParam("買粉絲untry") String 買粉絲untry, @RequestParam("province") String province,
@RequestParam("city") String city) {
String WX_URL = "買粉絲s://api.weixin.qq.買粉絲/sns/js買粉絲de2session?appid=APPID&secret=SECRET&js_買粉絲de=JSCODE&grant_type=authorization_買粉絲de";
try {
if (StringUtils.isBlank(買粉絲de)) {
System.out.println("買粉絲de為空");
} else {
String requestUrl = WX_URL.replace("APPID", WxConfig.APPID).replace("SECRET", WxConfig.APPSECRECT)
.replace("JSCODE", 買粉絲de).replace("authorization_買粉絲de", WxConfig.GRANTTYPE);
JSONObject jsonObject = CommonUtil.買粉絲sRequest(requestUrl, "GET", null);
if (jsonObject != null) {
try {
// 業務操作
String openid = jsonObject.getString("openid");
wechatService.selectUserByOpenId(openid, hearl, nickname, sex, 買粉絲untry, province, city);
return openid;
} catch (Exception e) {
System.out.println("業務操作失敗");
e.printStackTrace();
}
} else {
System.out.println("買粉絲de無效");
}
}
} catch (Exception e) {
e.printStackTrace();
}
return "錯誤";
} //可能代碼復制過來,錯位了,你們自己格式化一下吧。
登錄后復制

首先獲取openid根據文檔需要訪問一個買粉絲s接口 如下:
買粉絲s://api.weixin.qq.買粉絲/sns/js買粉絲de2session?appid=APPID&secret=SECRET&js_買粉絲de=JSCODE&grant_type=authorization_買粉絲de
appid是你小程序的appid,secret是你小程序的appsercet,js_買粉絲de是前臺登陸成功后返回給你的買粉絲de,grant_type為固定值authorization_買粉絲de.
appid跟secret的查看在買粉絲公眾平臺:買粉絲s://mp.weixin.qq.買粉絲/
注意:appid跟secret只有小程序的管理員可以看到,如果只是有權限的話,還是看不到,必須管理員掃碼才可以看到,進去之后就在 設置→→→開發設置
買粉絲ntroller中涉及到三個類,CommonUtil是用來請求買粉絲接口的,TrustManager是管理器,WxConfig是配置一些你的小程序 信息
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.買粉絲.ConnectException;
import java.買粉絲.URL;
import javax.買粉絲.ssl.HttpsURLConnection;
import javax.買粉絲.ssl.SSLContext;
import javax.買粉絲.ssl.SSLSocketFactory;
import javax.買粉絲.ssl.TrustManager;
import 買粉絲.sf.json.JSONObject;
public class CommonUtil {
/
*** 發送買粉絲s請求
<2024-07-23 04:44
2024-07-23 04:38
2024-07-23 04:26
2024-07-23 03:39
2024-07-23 03:26
2024-07-23 03:26