这个小程序的主要目的是为了用户用微信的用户信息登录后将用户信息授权存入自己的数据库中,这样以后每次微信登录得到的代码所得到的openid可以在项目的数据库中查到该用户的相关信息。
在测试的过程中,需要用户登录得到的代码,所以会用到微信开发小工具~ !
该工具的使用必须被项目授权
所生成的代码是有时间限制的
微信登录端口的api如下
接口地址:https://api.weixin.qq.com/sns/jscode2session& # 63; appid=APPID&秘密=SECRET& js_code=JSCODE& grant_type=authorization_code
请求参数:
参数必填说明
appid是小程序唯一标识
秘密是小程序的应用秘密
js_code是登录时获取的代码
grant_type是填写为authorization_code
返回参数:
参数说明
openid用户唯一标识
session_key会话密钥
expires_in会话有效期,以秒为单位,例如2592000代表会话有效期为30天
返回说明:
//正常返回的JSON数据包 { :“openid openid”, :“session_key SESSIONKEY” “expires_in”: 2592000 }
//错误时返回JSON数据包(示例为代码无效) { “errcode”: 40029年, “errmsg”:“无效的代码” }
所以我们可以将代码写成如下
公司将发送的报文格式自己都写好了的,我只需要写出请求路径和请求参数就好
//@Param代码用户登录微信生成的代码//@Return OAuthResult返回包含openid和session_key和expires_in的类 公共OAuthResult getOAuthResultByCode(字符串代码){ 字符串路径="/社交/jscode2session”; Object> Map<字符串;,参数=new HashMap<的在(); 参数。把(“appid”, WechatConstant.WECHAT_APP_ID); 参数。put(“秘密”,WechatConstant.WECHAT_APP_SECRET); 参数。(“js_code”,代码); 参数。put (" grant_type”、“authorization_code”); OAuthResult OAuthResult=messageSender。getMessageForObject(路径参数,OAuthResult。类,假); 如果(oAuthResult.getOpenid ()==null) { 把新的BusinessException (BusinessException.Code。OAUTH_PROCESS_ERROR”OAuth异常,原因:“+ oAuthResult.getErrmsg ()); } 返回oAuthResult; } >之前以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
微信端开发——登录小程序步骤