收藏
回答

公众号扫码事件推送如何设置?

AppID
wx8a05f23278b217fc

不知错在哪里?还是我设置的位置不对?

以下是我对自己的URL验证结果


回答关注问题邀请回答
收藏

2 个回答

  • 苦瓜切成片。
    苦瓜切成片。
    12-16

    我记得post要返回一个“success”

    12-16
    有用
    回复
  • 周卫-Marcus
    周卫-Marcus
    12-16

    服务端代码:

    @GetMapping("/wechat/receive")
    public ResponseEntity check(@RequestParam String signature,
                                @RequestParam String echostr,
                                @RequestParam String timestamp,
                                @RequestParam String nonce) throws AesException {
        log.info("GET 收到通知, signature:{} echostr:{},timestamp:{},nonce:{} ", signature, echostr, timestamp, nonce);
        List<String> list = new ArrayList<>();
        list.add(echostr);
        list.add(timestamp);
        list.add(nonce);
        wxUserService.checkReceive(signature, echostr, timestamp, nonce, "");
        return ResponseEntity.ok(echostr);
    }
    @PostMapping("/wechat/receive")
    public ResponseEntity<String> receiveEvent(@RequestBody WxEncryptEvent wxEncryptEvent, @RequestParam String signature,
                                   @RequestParam String echostr,
                                   @RequestParam String timestamp,
                                   @RequestParam String nonce,
                                   @RequestParam String openid,
                                   @RequestParam String encrypt_type,
                                   @RequestParam String msg_signature) {
        log.info("收到通知body:{} echostr:{} timestamp:{} nonce:{} openid:{} encrypt_type:{} msg_signature:{}",
                wxEncryptEvent, echostr, timestamp, nonce, openid, encrypt_type, msg_signature);
        try {
            wxUserService.receiveEvent(wxEncryptEvent, echostr, timestamp, nonce, openid, encrypt_type, msg_signature);
            return ResponseEntity.ok("");
        }catch (Exception e){
            log.error("", e);
        }
        return ResponseEntity.status(HttpStatus.UNAUTHORIZED).body("");
    
    }
    



    @Data
    public class WxEncryptEvent {
        String ToUserName;
        String Encrypt;
    }
    


    12-16
    有用
    回复 1
    • 翔云
      翔云
      21小时前
      没用,服务器没收到任何信息。
      21小时前
      回复
登录 后发表内容
问题标签