最近公司要做一个短视频的二次分享案例,乘此机会好好琢磨了一下java服务端开发,网上也有很多例子,但是这里我会把我遇到过的一些坑完整的记录在此处。微信分享的大致过程也就是这样的首先需要确定如何配置JS安全域名,【设置】-【微信号设置】-【基本配置】-【获取到AppId和AppSecret】,特别需要说的一点是,IP白名单的配置,这个一定要配置,否则将会获取不到access_token,接着发生很神奇的事情,获取不到微信分享要用到的JS_ticket,一直报错ticket无法获取到,然而当我把本地的IP加入到报名单列表中的时候,在本地测试能获取到JS_ticke,signature,nonceStr,timestamp,问题又来了部署到线上一直报错,valiad signature【无效的签名】,
想来也是很奇怪,当我用js_ticket等参数来获取signature的时候也能获取成功,于是乎使用【微信JS签名校验工具】进行校验,没发现问题所在,一直很纠结,就是找不到问题的所在,最后被别人一点就透,服务器的IP地址没有添加到白名单里面,果然加入之后,完全能获取到参数。
想来也是很奇怪,当我用js_ticket等参数来获取signature的时候也能获取成功,于是乎使用【微信JS签名校验工具】进行校验,没发现问题所在,一直很纠结,就是找不到问题的所在,最后被别人一点就透,服务器的IP地址没有添加到白名单里面,果然加入之后,完全能获取到参数。