启用跨原点,但错误仍然存​​在

时间:2019-09-24 11:00:24

标签: node.js express cors

我已经在使用express作为中间件的nodejs服务器中启用了CORS,但我仍然得到

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource

我尝试启用此处建议的cors和解决方案 Using CORS Still Give Cross Origin Error

但是它仍然对我不起作用。

app.use(cors())
app.options('*',cors())
app.use((req, res, next) => {
    res.header('Access-Control-Allow-Origin', '*');

    // authorized headers for preflight requests
    // https://developer.mozilla.org/en-US/docs/Glossary/preflight_request
    res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept');
    next();

    app.options('*', (req, res) => {
        // allowed XHR methods  
        res.header('Access-Control-Allow-Methods', 'GET, PATCH, PUT, POST, DELETE, OPTIONS');
        res.send();
    });
});

这是我在前端nextjs应用中创建请求的方式。

 const requestBody={
            bnb: address
        }


        let config = {
            headers: {
            'Content-Type': 'application/x-www-form-urlencoded'
            }
        }


        axios.post(methods.verify_bnb, qs.stringify(requestBody), config)
        //

启用了cors后,我应该能够发出请求并进行服务器处理,但是它仍然会引发上述错误。

1 个答案:

答案 0 :(得分:0)

我在zeit上部署了前端,并在计算引擎上部署了服务器。这给了我这个错误,一旦我在相同的计算引擎上部署了前端,它就可以正常工作。我不确定这是否是正确的实现,但是CORS错误不再产生