用HbuildX的同学,请注意,微信登录,真机调试,需要使用”自定义基座调试“,配置的appid才能生效。否则使用的是uniapp的测试appid,造成appid不一致,code无效。 https://uniapp.dcloud.net.cn/tutorial/app-oauth-weixin.html 文档上有提示注意事项的。 自定义基座文档: https://uniapp.dcloud.net.cn/tutorial/run/run-app.html#customplayground 同时可能需要注意一下,之前用过标准基座调试的话,最好删除一下,然后HbuildX重新安装自定义基座。
微信移动应用授权登录获取code为失效状态?我想接入移动应用授权登录 看文档第一步是需要前端获取code 然后根据code获取token 再去获取微信用户信息 在前端返回code 后端使用code时 返回 获取token失败 errcode:40029 errmsg:invalid code, rid: 642e85f6-62ecda1a-3184a702 下面是前端代码: [图片] [图片] [图片] 下面是后端代码: APPID 是 wx2cd52e3d8f6d4f8d // 凭证获取(GET) public final static String tokenUrl = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code"; /** * 获取接口访问凭证 * @param code app授权后传回 * @return */ public static WechatTokenEntity getToken(String code) { WechatTokenEntity token = new WechatTokenEntity(); String requestUrl = tokenUrl.replace("APPID", appid).replace("SECRET", appsecret).replace("CODE", code); // 发起GET请求获取凭证 JSONObject jsonObject = httpsRequest(requestUrl, "GET", null); if (null != jsonObject) { try { token.setUnionId(jsonObject.getString("unionid")); token.setOpenid(jsonObject.getString("openid")); token.setAccessToken(jsonObject.getString("access_token")); token.setRefreshToken(jsonObject.getString("refresh_token")); token.setExpiresIn(jsonObject.getInt("expires_in")); } catch (JSONException e) { token = null; // 获取token失败 log.error("获取token失败 errcode:{} errmsg:{}", jsonObject.getInt("errcode"), jsonObject.getString("errmsg")); } } return 这个是调用获取code的https请求代码 /** * 发送https请求 * * @param requestUrl 请求地址 * @param requestMethod 请求方式(GET、POST) * @param outputStr 提交的数据 * @return JSONObject(通过JSONObject.get ( key)的方式获取json对象的属性值) */ public static JSONObject httpsRequest(String requestUrl, String requestMethod, String outputStr) { JSONObject jsonObject = null; try { // 创建SSLContext对象,并使用我们指定的信任管理器初始化 TrustManager[] tm = {new WechatTrustManager()}; SSLContext sslContext = SSLContext.getInstance("SSL", "SunJSSE"); sslContext.init(null, tm, new java.security.SecureRandom()); // 从上述SSLContext对象中得到SSLSocketFactory对象 SSLSocketFactory ssf = sslContext.getSocketFactory(); URL url = new URL(requestUrl); HttpsURLConnection conn = (HttpsURLConnection) url.openConnection(); conn.setSSLSocketFactory(ssf); conn.setDoOutput(true); conn.setDoInput(true); conn.setUseCaches(false); // 设置请求方式(GET/POST) conn.setRequestMethod(requestMethod); // 当outputStr不为null时向输出流写数据 if (null != outputStr) { OutputStream outputStream = conn.getOutputStream(); // 注意编码格式 outputStream.write(outputStr.getBytes(StandardCharsets.UTF_8)); outputStream.close(); } // 从输入流读取返回内容 InputStream inputStream = conn.getInputStream(); InputStreamReader inputStreamReader = new InputStreamReader(inputStream, StandardCharsets.UTF_8); BufferedReader bufferedReader = new BufferedReader(inputStreamReader); String str = null; StringBuilder stringBuilder = new StringBuilder(); while ((str = bufferedReader.readLine()) != null) { stringBuilder.append(str); } // 释放资源 bufferedReader.close(); inputStreamReader.close(); inputStream.close(); inputStream = null; conn.disconnect(); jsonObject = JSONObject.fromObject(stringBuilder.toString()); } catch (ConnectException ce) { System.err.printf("连接超时:{}", ce); } catch (Exception e) { System.err.printf("https请求异常:{}", e); } return jsonObject; }
2023-10-27有啥提交的申诉技巧和注意点吗?申诉过一次,没通过。
微信支付违规“风险异常商户处置”,已经提交申诉,什么时候能通过审核?微信支付违规“风险异常商户处置”,关闭微信支付。已经提交申诉了,什么时候能通过审核?没有任何原因说明,也没有用户投诉,是啥情况呢?
2023-04-07有办法让用户升级小程序基础库吗?现在用户小程序进入页面,都是空白。用户昨天都还正常使用,今天我升级了小程序,添加了小程序广告,更新了版本,然后有一个用户就进不去了。
部分手机报错:wx.getAppBaseInfo 是怎么回事呢?[图片]
2023-01-13