知識(shí)
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營銷的便利,運(yùn)營的高效,讓網(wǎng)站成為營銷工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!
您當(dāng)前位置>首頁 » 新聞資訊 » 公眾號(hào)相關(guān) >
移動(dòng)端h5公眾號(hào)網(wǎng)頁登錄
發(fā)表時(shí)間:2020-9-24
發(fā)布人:葵宇科技
瀏覽次數(shù):70
h5訪問地址是一個(gè)接口。就是 http://xxx/wx/mpauth
private String mpAppid="公眾號(hào)的appid";
private String mpAppsecret="公眾號(hào)的appid";
private String mpRedirecturl="http://xxx/wx/mphandle";
/**
* 1.微信公眾號(hào)跳轉(zhuǎn)授權(quán)
*/
@RequestMapping("/wx/mpauth")
public void toWxMpAuth(HttpServletResponse response) throws IOException {
String url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_userinfo&state=0#wechat_redirect";
url = url.replace("APPID",mpAppid);
url = url.replace("REDIRECT_URI",mpRedirecturl);
response.sendRedirect(url);
}
/**
* 2.公眾號(hào)授權(quán)處理
* @param code
* @throws IOException
*/
@RequestMapping("/wx/mphandle")
public void mpHandle(HttpServletResponse response,String code) throws IOException {
JSONObject jsonObject = WxUtil.getOpenidByCode(mpAppid,mpAppsecret,code);
String openid = jsonObject.getString("openid");
String accessToken = jsonObject.getString("access_token");
lsUserService.operateMpLogin(response,openid,accessToken);
}
import com.lanshi.framework.jwt.JWTUtil;
import com.alibaba.fastjson.JSONObject;
/**
* 3.處理公眾號(hào)授權(quán)登錄
* @param response
* @param openid
* @param accessToken
*/
public void operateMpLogin(HttpServletResponse response, String openid, String accessToken) throws IOException {
JSONObject jsonObject = WxUtil.getUserInfoByOpenidAndAccessToken(openid,accessToken);
if(jsonObject==null){
response.sendRedirect(mpRedirecturl+"loginMobile.html"+"?errorMsg=獲取token錯(cuò)誤");
}
String unionid = jsonObject.getString("unionid");
String nickname = jsonObject.getString("nickname");
String headimgurl = jsonObject.getString("headimgurl");
String[] arr = unionid.split("_");
LsUser lsUser = lsUserDao.getUserByUnionid(arr[0]);
//以下為業(yè)務(wù)邏輯,根據(jù)需求修改
if(lsUser==null){
response.sendRedirect(mpRedirectHtml+"公眾號(hào)網(wǎng)頁名稱1.html"+"?unionid="+unionid+"_"+openid);
}else{
if(lsUser.getStatus().intValue()!=10){
response.sendRedirect(mpRedirectHtml+"公眾號(hào)網(wǎng)頁名稱1.html"+"?errorMsg=當(dāng)前用戶已經(jīng)被禁用");
return;
}
lsUser.setMpOpenid(openid);
lsUser.setNickname(nickname);
lsUser.setHeadimg(headimgurl);
lsUserDao.updateById(lsUser);
response.sendRedirect(mpRedirectHtml+"公眾號(hào)網(wǎng)頁名稱2.html"+"?userinfo="+JWTUtil.sign(lsUser.getId().toString()));
}
}
相關(guān)案例查看更多
相關(guān)閱讀
- 網(wǎng)站建設(shè)專家
- 云南小程序開發(fā)哪家好
- 云南網(wǎng)站建設(shè)公司哪家好
- 軟件開發(fā)
- 云南小程序定制
- 昆明網(wǎng)絡(luò)公司
- 昆明小程序定制開發(fā)
- 報(bào)廢車拆解軟件
- 云南做軟件
- 云南網(wǎng)站建設(shè)方案 doc
- 網(wǎng)頁制作
- 小程序開發(fā)
- 模版信息
- 網(wǎng)站建設(shè)案例
- 迪慶小程序開發(fā)
- 云南網(wǎng)站建設(shè)百度
- 云南網(wǎng)站建設(shè)列表網(wǎng)
- 網(wǎng)站建設(shè)費(fèi)用
- 云南網(wǎng)站建設(shè)價(jià)格
- 專業(yè)網(wǎng)站建設(shè)公司
- 云南網(wǎng)站建設(shè)專家
- 云南etc微信小程序
- 昆明網(wǎng)站建設(shè)公司
- 日歷組件
- 網(wǎng)站建設(shè)百度官方
- 報(bào)廢車拆解管理系統(tǒng)
- 云南科技公司
- 前端
- 昆明做網(wǎng)站建設(shè)的公司排名
- 云南企業(yè)網(wǎng)站