知識
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價值,我們在追求其視覺表現(xiàn)的同時,更側(cè)重于功能的便捷,營銷的便利,運(yùn)營的高效,讓網(wǎng)站成為營銷工具,讓軟件能切實提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序為后期升級提供便捷的支持!
您當(dāng)前位置>首頁 » 新聞資訊 » 公眾號相關(guān) >
移動端h5公眾號網(wǎng)頁登錄
發(fā)表時間:2020-9-24
發(fā)布人:葵宇科技
瀏覽次數(shù):70
h5訪問地址是一個接口。就是 http://xxx/wx/mpauth
private String mpAppid="公眾號的appid";
private String mpAppsecret="公眾號的appid";
private String mpRedirecturl="http://xxx/wx/mphandle";
/**
* 1.微信公眾號跳轉(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.公眾號授權(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.處理公眾號授權(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錯誤");
}
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+"公眾號網(wǎng)頁名稱1.html"+"?unionid="+unionid+"_"+openid);
}else{
if(lsUser.getStatus().intValue()!=10){
response.sendRedirect(mpRedirectHtml+"公眾號網(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+"公眾號網(wǎng)頁名稱2.html"+"?userinfo="+JWTUtil.sign(lsUser.getId().toString()));
}
}
相關(guān)案例查看更多
相關(guān)閱讀
- 云南網(wǎng)站建設(shè)公司
- 小程序開發(fā)費用
- 云南小程序開發(fā)公司哪家好
- 云南小程序商城
- 云南旅游網(wǎng)站建設(shè)
- 北京小程序開發(fā)
- 云南做軟件
- 微信分銷
- 汽車報廢回收管理軟件
- 模版消息
- SEO
- typescript
- 網(wǎng)站上首頁
- 網(wǎng)站收錄
- 云南小程序開發(fā)哪家好
- 云南網(wǎng)站建設(shè)快速優(yōu)化
- 云南小程序被騙
- 網(wǎng)站優(yōu)化公司
- 小程序設(shè)計
- 軟件定制
- 網(wǎng)站建設(shè)公司網(wǎng)站
- asp網(wǎng)站
- 云南建設(shè)廳網(wǎng)站
- 海報插件
- 云南網(wǎng)站建設(shè)哪家公司好
- 云南網(wǎng)站建設(shè)哪家強(qiáng)
- 云南網(wǎng)站開發(fā)哪家好
- 網(wǎng)站建設(shè)開發(fā)
- 云南網(wǎng)站優(yōu)化公司
- 退款