广告
返回顶部
首页 > 资讯 > 精选 >第三方网站微信登录java代码实现
  • 952
分享到

第三方网站微信登录java代码实现

java网站微信登录 2023-05-31 15:05:31 952人浏览 安东尼
摘要

前两个星期在公司中的项目加上了微信登录、绑定的功能,在这里做个记录!一、开发前知识微信开放平台与微信公众平台的区别 1.1 微信公众平台:   ① 地址:https://mp.weixin.qq.com/cgi-bin/loginpage&

前两个星期在公司中的项目加上了微信登录、绑定的功能,在这里做个记录!

一、开发前知识

微信开放平台与微信公众平台的区别

 1.1 微信公众平台:  

 ① 地址:https://mp.weixin.qq.com/cgi-bin/loginpage?t=wxm2-login&lang=zh_CN

 ② 微信公众平台面向的是普通的用户,比如自媒体和媒体,企业官方微信公众账号运营人员使用,当然你所在的团队或者公司有实力去开发一些内容,也可以调用公众平台里面的接口,比如自定义菜单,自动回复,查询功能。

 1.2 微信开放平台: 

 ① 地址:Https://open.weixin.qq.com/

 微信开放平台:面向的是开发者和第三方独立软件开发商。开放平台的文档似乎包含了微信开放平台文档里面的接口。

微信公众平台目前只支持80端口,且项目上传到服务器上面不容易debug啊?

解决方法:ngrok 工具,可以根据本地项目映射成外网可以访问的地址、端口,默认映射为80端口。

官网: https://dashboard.ngrok.com

存在问题: 每次重启,域名会变化,都需要项目中、微信公众平台配置,付费可以固定域名。。。

使用方法: ① 注册后获得一个授权码,下载 ngrok

      ② 》CMD 进入 ngrok 目录

       》ngrok authtoken 授权码

       》ngrok http 8080

      ③看到这个页面,ngrok就为你分配了临时访问通道成功了^^

第三方网站微信登录java代码实现

二、配置

(每个微信号可以申请成为开发者测试账号进行微信功能开发的。)

在公众平台中进行配置:

地址: http://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index  

 ①:配置“接口配置信息” (Token 在项目中我是配置为"handsomeKing",没错,我就是King ^^)

 url 改为自己映射的域名

第三方网站微信登录java代码实现

 ② 配置“功能服务” 的 “网页帐号”。注意,是域名

第三方网站微信登录java代码实现

好了,可以愉快的coding 了!!!

三、可以开发啦

上面的 “接口配置信息” 配置得 wechat/ownerCheck 方法是验证 这个url 为我自己的,handsomeKing 就是这个方法中的一个参数。微信这个小朋友会用Get方法带上4个参数给我服务器: signature(签名)、timestamp(时间戳)、nonce(随机数)、echostr(随机字符串),再加上咱们项目中自己配置的 token ,通过检验signature对请求进行校验,若校验成功则原样返回echostr,表示接入成功,否则接入失败:(talk is cheap, show me the code *&)

  @RequestMapping("/ownerCheck") public void ownerCheck(Model model, HttpServletRequest request,HttpServletResponse response) throws IOException { System.out.println(111); boolean isGet = request.getMethod().toLowerCase().equals("get"); PrintWriter print; if (isGet) {  // 微信加密签名  String signature = request.getParameter("signature");  // 时间戳  String timestamp = request.getParameter("timestamp");  // 随机数  String nonce = request.getParameter("nonce");  // 随机字符串  String echostr = request.getParameter("echostr");  // 通过检验signature对请求进行校验,若校验成功则原样返回echostr,表示接入成功,否则接入失败  if (signature != null && CheckoutUtil.checkSignature(signature, timestamp, nonce)) {  try {   print = response.getWriter();   print.write(echostr);   print.flush();  } catch (IOException e) {   e.printStackTrace();  }  } } }

--结束END--

本文标题: 第三方网站微信登录java代码实现

本文链接: https://www.lsjlt.com/news/226833.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作