CNode

nodejs支付宝集成收不到调用参数

问答
Ggastrodia发布于11 年前最后回复11 年前2 回复5387 浏览0 收藏

如题

5A0CC-0D0A-4F81-B609-7F9DFE92983.jpg

现在能收到notify回调 不过params query body都是空的

看文档是post过来的参数 2AE5A0CC-0D0A-4F81-B609-7F9DFE929832.png

我这边也是按照post方式解析了 E524CD67-54E4-4DBF-8DFB-0C0B36050166.png

但还是收不到参数 ,请问是什么问题。。

查看回复

回复 (2)

G
gastrodia#1·11 年前

自己解决了

貌似是支付宝发送post请求的时候content-type设置的不标准,自己写一个middleware解析一下数据就好了

 function(req,res,next){
        // parse
        var buf = '';
        req.setEncoding('utf8');
        req.on('data', function(chunk){ buf += chunk });
        req.on('end', function(){
            if(buf){
                try{
                    var qs = require('querystring');
                    var ob = qs.decode(buf);
                    req.query = ob;
                }catch (e){
                    console.log('taobao body parser fail!');
                    console.log(e);
                }
            }
            next();
        });
    }
V
vendetta0114#2·11 年前

感谢,解析成功

参与回复
登录后即可参与回复。登录