当前时间:2023-02-20
网上有很多,但是都有问题,什么return echostr,或者return true 都是有问题的。
后来想到支付支付回调时候,微信也是这个鬼样子,直接return 根本不行,需要通过response直接返回
解决办法(针对JAVA)
@RequestMapping("/checkWeixinValid")
public void checkWeixinValid(HttpServletRequest request,HttpServletResponse response) throws IOException{
String echoStr = request.getParameter("echostr");
/**
* 这里可以对参数进行验证,我这里就直接返回了
* request可以获取四个参数,分别是 signature 、 timestamp 、 nonce 、 echostr
*/
log.info("echoStr:======"+echoStr);
response.setHeader("Content-type", ContentType.JSON.toString());
response.getOutputStream().write(echoStr.getBytes(StandardCharsets.UTF_8));
response.flushBuffer();
}
配置URL(填写): https://www.xxx.com/.../checkWeixinValid
token(填写): 自定义
密钥:自定义