当前位置: 首页 > news >正文

网站建设方面书籍免费推广手段

网站建设方面书籍,免费推广手段,广州做餐饮的招聘网站,竞价托管外包服务一、准备一个已经认证OK的微信公众号和已经备案的域名,且解析好配置好https证书。 1.如上图 微信公众号 > 基本配置 ,设置开发者密码 2.设置IP白名单,白名单填写提供后端服务的服务器公网IP 二、公众号服务器配置。 1.找到基本配置 2.将服…

一、准备一个已经认证OK的微信公众号和已经备案的域名,且解析好配置好https证书。

在这里插入图片描述
1.如上图 微信公众号 > 基本配置 ,设置开发者密码
2.设置IP白名单,白名单填写提供后端服务的服务器公网IP
二、公众号服务器配置。
1.找到基本配置
在这里插入图片描述
2.将服务器url填写为你备案的域名,关于URL请求超时token验证失败,可以到下面的文章中查看解决方法。
解决方法传送门
在这里插入图片描述

三、设置jsapi安全域名、授权域名、业务域名。
1.如图找到 公众号设置>功能设置
在这里插入图片描述
2.三个参数都设置为域名
四、在后端设置一个路由返回微信的登录url

// AuthLogin @Title 授权URL
// @router /authLogin [post,get]
func (u *UserController) AuthLogin() {url := "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + appid + "&redirect_uri=" + baseUrl + "&response_type=code&scope=snsapi_userinfo&state=200#wechat_redirect"u.Success(0, url, "成功")
}
注释:
baseUrl为H5中授权成功返回的页面。

五、在网页H5中,打开第四步后端返回的链接进行微信授权,并且保存好微信授权返回的code参数;

1.首先获取授权的URL,然后直接跳转这个URL;

authLogin(){uni.$u.http.get("/user/authLogin").then(response=>{console.log(response)if (response.code === 0){window.location.href = response.data}else{}})}

2.用户点击我同意之后,便会携带code以及state等参数跳转回uni-app的一个页面中,在onload事件里面触发,判断code不为空,则调用第3步的后台接口,获取用户的资料信息。

oauthLogin() {this.loading = trueuni.$u.http.get(`/user/oAuthToken?code=${this.code}`).then(response => {if (response.code === 0) {this.$store.commit('user/token', response.data)uni.navigateTo({url: "/pages/serve"})} else {this.$store.commit('user/token', "")}this.loading = false})
},
onLoad: function(option) {if (option['state'] !== undefined && Number(option.state) === 200 && option['code'] !== undefined) {this.code = option['code']this.oauthLogin()} else {this.loading = falsethis.$wx.initJssdk()}this.loadmore()},

3.后端获取微信用户信息的接口如下,这里要先用code获取accessToken和openid,然后再用accessToken以及openid拿到用户信息,最后做一个缓存,避免重复获取。

// OAuthToken @Title OAuth获取用户信息
// @router /oAuthToken [post,get]
func (u *UserController) OAuthToken() {errRes := oAuthErrRes{}successRes := oAuthRes{}successInfoRes := oAuthInfoRes{}authorization := u.GetString("code", "")u.hasLogin = falseif u.hasLogin == false {url := "https://api.weixin.qq.com/sns/oauth2/access_token?appid=" + appid + "&secret=" + secret + "&code=" + authorization + "&grant_type=authorization_code"res, err := common.PostReq(url, "")logs.Error(res)err = json.Unmarshal([]byte(res), &errRes)err = json.Unmarshal([]byte(res), &successRes)if err != nil {u.Error(400, "请求错误")}if errRes.Errcode > 0 {u.Error(400, errRes.Errmsg)}url = "https://api.weixin.qq.com/sns/userinfo?access_token=" + successRes.AccessToken + "&openid=" + successRes.Openid + "&lang=zh_CN"res, err = common.PostReq(url, "")logs.Error(res)err = json.Unmarshal([]byte(res), &errRes)err = json.Unmarshal([]byte(res), &successInfoRes)if err != nil {u.Error(400, "请求错误")}if errRes.Errcode > 0 {if u.hasLogin == true {_ = u.ac.Delete(u.token)_ = u.ac.Delete(u.token + "-info")}}_ = u.SetSession("access_token", successRes.AccessToken)_ = u.SetSession("openid", successRes.Openid)m := models.Member{NickName:    successInfoRes.Nickname,Phone:       0,Sex:         successInfoRes.Sex,LoginType:   1,HeadImgUrl:  successInfoRes.Headimgurl,OpenId:      successInfoRes.Openid,UnionId:     successInfoRes.Unionid,AccessToken: successRes.AccessToken,Location:    successInfoRes.Country + " " + successInfoRes.Province + " " + successInfoRes.City,}_ = m.Add()} else {successRes = u.authRessuccessInfoRes = u.infoReslogs.Error("登录缓存信息", successInfoRes)}token := common.GetToken()if u.hasLogin == true {token = u.token}data, _ := json.Marshal(successRes)_ = u.ac.Put(token, string(data), 28*60*60*time.Second)data, _ = json.Marshal(successInfoRes)_ = u.ac.Put(token+"-info", string(data), 28*60*60*time.Second)u.Success(0, token, "请求成功")
}

六、在第五步中,已经将获取到的用户信息保存在cache中,对应的key则是接口中返回的token,之后网页中其它接口,就可以直接拿cache中保存的用户信息,至此微信授权登录流程已经走完。

实际上对接并不难,就是要配置这配置那,哪一步没配置好,就导致出错。

http://www.yayakq.cn/news/120873/

相关文章:

  • 凡科建站怎么收费不同类型网站
  • 旅游营销的网站建设wordpress 前端图片上传
  • asp网站授权码如何做vps上的网站运行太慢
  • 网站开发遇到的难题好的产品设计网站
  • 做城市网站的标语做网站毕设任务书
  • 玉环做网站有哪些网站地址栏
  • 哪个网站做的简历最好小红书怎么推广
  • 南阳做网站seo的seo知识培训
  • 电子商务网站建设文档企业公司有哪些
  • 商城网站建设缺点域名里可以建网站
  • 桐乡 网站建设最全的百度网盘搜索引擎
  • 广州和信建设公司网站做网站卖东西流程
  • 教育平台网站可信网站认证
  • 各网站网络营销产品价格策略南京平面设计师联盟
  • 建站系统破解源码凡科做网站有什么用
  • 二次元网站开发的意义Wordpress 十大
  • 服务器做网站好吉林长春建设工程信息网站
  • 朝阳网站建设 慈云寺深圳乐安居网站谁做的
  • 网站开发的职位要求凉州区住房和城乡建设局网站
  • 模板网站建设 百度wordpress修改文字大小
  • 做视频周边的网站网站建设的作业模板
  • 莆田有哪些网站建设公司奇月网络官方网站
  • 购物手机网站怎么做发不了软文的网站怎么做关键词优化
  • 网站设计咨询网站淄博营销网站建设
  • 佛山市网站公司南宁网站建设 醉懂网络
  • 华为网站建设策划书hao123浏览器下载安装
  • 佛山网站制作好处广州网站建设菲利宾
  • 成都网站建设公司排名艾米艾园wordpress
  • 青岛专业做网站的公司有哪些网站备案有用
  • python 网站开发 sae房山富阳网站建设