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

许昌做网站公司哪家专业房地产公司网站建设模板

许昌做网站公司哪家专业,房地产公司网站建设模板,郑州市建设工程造价信息网,wordpress 拒绝访问一、接着上文 上文把部署情况介绍了#xff0c;侧重于网络及代理#xff0c;本文选择把微信公众号的对接实现介绍一下。 还是那句话#xff0c;微信官方的文档已非常详细#xff0c;这里先摘抄一些重要的概念。 其次#xff0c;待对接微信公众号的接口众多#xff0c;…一、接着上文 上文把部署情况介绍了侧重于网络及代理本文选择把微信公众号的对接实现介绍一下。 还是那句话微信官方的文档已非常详细这里先摘抄一些重要的概念。 其次待对接微信公众号的接口众多我们只为获取openId只需要对接那么几个接口。 二、术语 1、用户 支付请求必须有appId和openId所谓微信公众号的对接对于我来说就是为获取微信用户的openId。 为了识别用户每个用户针对每个公众号会产生一个安全的OpenID如果需要在多公众号、移动应用之间做用户共通则需前往微信开放平台将这些公众号和应用绑定到一个开放平台账号下绑定后一个用户虽然对多个公众号和应用有多个不同的OpenID但他对所有这些同一开放平台账号下的公众号和应用只有一个UnionID。 2、什么是accessToken access_token是公众号的全局唯一接口调用凭据公众号调用各接口时都需使access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时需定时刷新重复获取将导致上次获取access_token失效。 3、公众号的appId和appSecret 在所有的接口中都必须传入这两个字段。所以你得找到它们。 4、安全文件 公众号设置-功能设置 依次设置业务域名、JS接口安全域名和网页授权域名。 将文件MP_verify_sJ7aG7qAZXmLo2xl.txt点击下载上传至填写域名或路径指向的web服务器或虚拟主机的目录若填写域名将文件放置在域名根目录下例如wx.qq.com/MP_verify_sJ7aG7qAZXmLo2xl.txt若填写路径将文件放置在路径目录下例如wx.qq.com/mp/MP_verify_sJ7aG7qAZXmLo2xl.txt并确保可以访问。 我这里把上面文件已保存至192.168.2.70所在的前端h5服务器。 三、对接实现 开源的微信公众号对接实现WxJava 及其对接示例weixin-java-mp-demo。对接的接口比较全面我们只选择了几个需要对接的接口。 1、对接流程 2、获取授权码和网页授权access_token 参考微信官方文档https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html 写得真的是太详细了有接口有入参还有示例。真的是有点太白看到崔颢写的登黄鹤楼有得一比 如果你获取accessToken报错40164错误码提示你的Ip非法那么有两种可能一是你没有把外网出口IP添加到白名单二是刚添加白名单需要等几分钟后才生效。 获取授权码codehttps://open.weixin.qq.com/connect/oauth2/authorize?appid%sredirect_uri%sresponse_typecodescopesnsapi_userinfostateSTATE#wechat_redirect通过code获取网页授权access_tokenhttps://api.weixin.qq.com/sns/oauth2/access_token?appid%ssecret%scode%sgrant_typeauthorization_code 返回字段说明截图见下 3、获取access_token 获取access_token的接口是https://api.weixin.qq.com/cgi-bin/token?appid%ssecret%sgrant_typeclient_credential 参考微信官方文档https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Get_access_token.html 注意这里有两个access_token别混淆错了。 至此我们简易的对接微信公众号的接口就已满足了。你有可能还需要定期刷新access_token、获取ticket并管理、根据openId查询用户信息等 /*** 获取微信预授权code*/private String authCode https://open.weixin.qq.com/connect/oauth2/authorize?appid%sredirect_uri%sresponse_typecodescopesnsapi_userinfostateSTATE#wechat_redirect;/*** 根据微信授权码code获取网页授权access_token和openId*/private String pageAuthAccessToken https://api.weixin.qq.com/sns/oauth2/access_token?appid%ssecret%scode%sgrant_typeauthorization_code;/*** 获取access_token* 和下面的接口有所区别本接口是生成access_token而下面的接口生成的是网页授权access_token。*/private String accessToken https://api.weixin.qq.com/cgi-bin/token?appid%ssecret%sgrant_typeclient_credential;/*** 刷新access_token*/private String refreshAccessToken https://api.weixin.qq.com/sns/oauth2/refresh_token?appid%sgrant_typerefresh_tokenrefresh_token%s;/*** 获取ticket*/private String jsApiTicket https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token%stypejsapi;/*** 获取用户基本信息*/private String userInfo https://api.weixin.qq.com/sns/userinfo?access_token%sopenid%s;4、多个公众号的配置 简单设计思路 使用一个Map存储key是appCodevalue信息包括appId、appSecret等。 这里摘抄开源项目的代码 yml配置文件 wx:mp:configs:- appId: wxs9a9692ecfa0kdbc # 第一个公众号的appidsecret: 83623c6ab0f33f54266old04df7x02sa # 公众号的appsecrettoken: # 接口配置里的Token值aesKey: # 接口配置里的EncodingAESKey值- appId: # 第二个公众号的appid以下同上secret: token: aesKey: java源码 package com.github.binarywang.demo.wx.mp.config;import com.github.binarywang.demo.wx.mp.utils.JsonUtils; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties;import java.util.List;/*** wechat mp properties** author a hrefhttps://github.com/binarywangBinary Wang/a*/ Data ConfigurationProperties(prefix wx.mp) public class WxMpProperties {/*** 多个公众号配置信息*/private ListMpConfig configs;Datapublic static class MpConfig {/*** 设置微信公众号的appid*/private String appId;/*** 设置微信公众号的app secret*/private String secret;/*** 设置微信公众号的token*/private String token;/*** 设置微信公众号的EncodingAESKey*/private String aesKey;}Overridepublic String toString() {return JsonUtils.toJson(this);} } 5、权限校验 在获取微信授权码code后调用登录接口生成并颁发token给客户端。 后面的接口都需要校验以保护后端的业务接口安全。 简要的校验实现 import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.springframework.http.HttpStatus;import javax.servlet.*; import javax.servlet.annotation.WebFilter; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException;Slf4j WebFilter(filterName jwtFilter, urlPatterns {/api/*}) public class JwtFilter implements Filter {private static String PREFIX Bearer ;private static String AUTHORIZATION AUTHORIZATION;Overridepublic void init(FilterConfig filterConfig) throws ServletException {}Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)throws IOException, ServletException {HttpServletRequest r (HttpServletRequest) request;String path r.getRequestURI();# 登录接口排除在外if (path.contains(api/v1/login)) {chain.doFilter(request, response);} else {String token r.getHeader(AUTHORIZATION);# 校验token的合法chain.doFilter(request, response);}}Overridepublic void destroy() {}} 四、总结 回到我们的目标本文非对接全部的微信公众号只需两个接口。 正所谓“弱水三千只取一瓢饮”还是那句话你如果要对接其他的更多接口请参考上文给的开源项目。 有了用户公众号的openId后面的支付接口测试就能进展下去了。 至于具体的支付联调待后面有时间再补充。
http://www.pierceye.com/news/545029/

相关文章:

  • 云南放心seo整站优化培训网页
  • 本地写wordpress北京百度seo点击器
  • 网站打不开怎么做wordpress 显示 链接深度
  • 新人怎么自己做网站更换wordpress语言包
  • 住房和城乡建设部网站安全分会邯郸做外卖网站的公司
  • 网站的文件结构企业服务公司排名
  • 微舍 微网站 怎么做wordpress 插件开发教程
  • 企业网站报价模板下载国外设计网址
  • 做网站怎么排版手机网站怎样建设
  • 大连优化网站课程国内外贸网站建设
  • 苏州建设局官方网站响应式网站制作工具
  • 德州建设小学网站网页设计与制作心得体会1000
  • 建站之星用做什么网站婚纱摄影网站开发的目的
  • 手机网站建设 cms湖南手机响应式网站建设企业
  • 德阳建设局官方网站能去百度上班意味着什么
  • 网站推广临沂企业seo策划方案优化案例
  • 河北建设厅注册中心网站网站策划书模板大全
  • 嘉兴建设教育网站培训中心网站wordpress有哪些弹窗插件
  • 石家庄网站seo外包无锡 做网站
  • 江西中慧城乡建设开发公司网站修复WordPress图片上传错误
  • 冠县网站设计做网站优化找谁
  • 网站的建设公司哪个好推广线上渠道
  • 网站建设方向论文提纲安徽鑫华建设有限公司网站
  • 哪个网站上门做护肤优秀建筑案例分析
  • 建立网站ftp刷排名seo软件
  • 网站pv是什么app开发入门基础教程
  • 开发网站的可行性the7企业中 英文wordpress模板
  • 晋城网站设计重庆小程序商城开发
  • 找人做网站被骗能立案吗阿里云专有网络做网站
  • 做别人一摸一样的网站犯法吗买一个网站多少钱