如何修复node.js中谷歌浏览器的CORB(跨域读取阻止)错误?

时间:2019-01-11 13:51:10

标签: node.js google-chrome npm paypal-rest-sdk

我正在尝试使用paypal-rest-sdk进行结帐,并且在成功响应后将其重定向到Approval_url,然后出现以下错误。

  

跨域读取阻止(CORB)阻止了MIME类型为text / html的跨域响应https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-9TM98470K35457508。有关更多详细信息,请参见https://www.chromestatus.com/feature/5629709824032768

paypal.payment.create(create_payment_json, function (error, payment) {
    if (error) {
        res.status(500).json({success: false,msg:'error -'+ error});
    }
    else {
        for(var i = 0; i < payment.links.length; i++){
            if(payment.links[i].rel === 'approval_url' && 
                payment.links[i].method === 'REDIRECT'){
                 //  this is coming in console
                console.log('payment is processing');
                 // error is coming here when redirecting to payment gate
                res.redirect(payment.links[i].href);
            }
        }
    }
});

它应该成功重定向到支付网关。

1 个答案:

答案 0 :(得分:0)

错误来自您的浏览器,而不是来自Node.js。

您需要考虑您的浏览器端代码。

这听起来像是您正在使用Ajax发出HTTP请求并希望重新获得JSON。您正在使用500错误和一些JSON或重定向到一些HTML进行响应。

由于客户端需要JSON,因此会抱怨。

听起来您不应该首先使用Ajax。