微信小程序提供了一个简单、高效的应用开发框架和丰富的组件及API,能够使开发者开发具有原生APP体验的服务。
在微信小程序异军突起后,使得众多的中小型企业迎来了二次创业的机会。同时,微信小程序依托微信,给用户提供了便捷的使用方式,其不用下载即可使用的优点,取得了各行各业的喜爱。市面上,不同类型的微信小程序也不断的出现,如某东,某宝等也纷纷入驻。
微信小程序上线以来,受到众多开发者和中小型企业的喜爱,而我司页紧跟大流,希望能够为用户提供更加完善的业务。
微信小程序的主要开发语言是JavaScript,所有对开发者来说,是比较容易上手的,对于企业而言,成本是可控的。
1 如何打通自己账号与微信账号的关联
随着微信小程序的不断完善,其提供给开发者的功能不断的优化。同时,需求也不断地跟进。随着功能点的不断增加,如何将微信登录与站点账号绑定变得尤为重要。
如果依旧使用Web端的方式进行登录校验,这样会无辜的多了一步操作,用户在使用时,会感觉繁琐,因此账号的绑定便成为解决的有效方法。
2 小程序与我的服务器账号互通有无
① 我们通过wx.login()
方法拿到微信用户的code;
② 然后通过wx.request()
将code传递到我们服务器后台;
③ 根据小程序提供的APPID、SECRET以及传过来的CODE值到微信服务器获取到微信唯一标识openid。
④ 接着我们对openid进行加密处理后返回到小程序前台;
⑤ 用户登录账号后将openid与账号关联,后续访问接口时都带openid。
3 部分代码
//使用wx.login()获取code值
wx.login({
success: function(res) {
if (res.code) {
app.util.commonRequest(getOpenIdUrlPath, {
code: res.code
}, {'content-type': 'application/x-www-form-urlencoded'},
'POST', function(res) {
if(res.statusCode === 200) {
wx.setStorageSync('openid', res.data.openid); //存储openid
wx.setSotrageSync('userInfo', res.data.userInfo);//存储用户信息
wx.reLaunch({
url: '/pages/index/index',
});
}
});
} else {
app.util.showModalTip('提示', res.errMsg, '确定');
}
}
});
//返回加密openid
public static String getOpenID(String APPID, String SECRET, String code) {
String openid = "";
String aturl = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=" + APPID + "&secret=" + SECRET
+ "&code=" + code + "&grant_type=authorization_code";
try {
DefaultHttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet(aturl);
HttpResponse response = client.execute(request);
if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
String strResult = EntityUtils.toString(response.getEntity());
JSONObject jsonResult = new JSONObject(strResult);
openid = 3RDMD((String) jsonResult.get("openid"));
return openid;
} else {
return "获取OpenID失败";
}
} catch (IOException e) {
return "获取OpenID失败";
}
}
网友评论