当前位置:   article > 正文

微信公众号H5开发——JSSDK调用微信接口(前端流程)_前端微信公众号开发流程

前端微信公众号开发流程

(1)需要在微信公众后台->基本配置->ip白名单配置后台接口的ip

(2)需要在微信公众后台->公众号设置->功能设置->js接口安全域名

注意:在域名绑定时,请确定绑定域名与你H5进行wx.config发起域名一致,http与https一致

(3)获取微信API接口授权,出于安全性的考虑,认证信息主要由后端接口返回

(4)拿到认证信息,获取微信api权限

  1. //由于获取API授权,需要拿到当前页面的地址,ios跟安卓的页面地址不一样需要做下兼容
  2. function isIOS() {
  3. return /(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent);
  4. };
  5. //在路由守卫中修改页面地址
  6. router.afterEach((to, from) => {// true 时 为 IOS 设备
  7. if (isIOS() && AppConst.WX_CONFIG.indexOf(to.name) > -1) { // IOS并且需要使用微信环境的页面
  8. var url = `${window.location.origin}${window.location.pathname}${window.location.search}`
  9. if (window.entryUrl === '' || window.entryUrl === undefined) { //记录该地址config配置时使用
  10. window.entryUrl = url
  11. }
  12. if (window.entryUrl !== url) {
  13. window.entryUrl = url
  14. window.location.replace(url)
  15. }
  16. }
  17. })
  18. //注入微信环境
  19. import wx from "weixin-js-sdk";
  20. export function getWxConfig() {
  21. const request_url = isIOS() ? window.entryUrl : window.location.href
  22. Vue.prototype.$http.post(Vue.prototype.Api.wechat.getJsApiConfig, {url: request_url}).then((res) => {
  23. if (res.code === 0) {
  24. //后台传入数据
  25. let [appId, timestamp, nonceStr, signature] =
  26. [res.data.app_id, res.data.timestamp, res.data.nonce_str, res.data.signature];
  27. //验证微信环境
  28. wx.config({
  29. debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
  30. appId: appId, // 必填,公众号的唯一标识
  31. timestamp: timestamp, // 必填,生成签名的时间戳
  32. nonceStr: nonceStr, // 必填,生成签名的随机串
  33. signature: signature, // 必填,签名,见附录1
  34. jsApiList: ['chooseImage', 'previewImage'], // 必填,随意一个接口即可
  35. openTagList: ['wx-open-launch-weapp'], // 填入打开小程序的开放标签名
  36. });
  37. } else {
  38. Dialog({message: '网络繁忙,请稍后再试'})
  39. }
  40. })
  41. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/882615
推荐阅读
相关标签
  

闽ICP备14008679号