Angular 2 - No 'Access-Control-Allow-Origin' header is present on the requested resource

后端 未结 4 554
醉话见心
醉话见心 2020-12-11 03:55

When trying to make API Calls from my Angular 2 App to my API, I get the following error:

XMLHttpRequest cannot load http://localhost/myAPI/public/api/v1/aut         


        
相关标签:
4条回答
  • 2020-12-11 04:30

    I've been trying to enable cors in Laravel side with Cors middleware

    Have you registered routes to handle OPTIONS requests?

    If you simply add middleware to existing GET and POST routes, and the browser is making an OPTIONS request, the middleware is never reached.

    0 讨论(0)
  • 2020-12-11 04:31
    //Add this middleware in your express app
    app.use(function (req, res, next) {
    res.setHeader('Access-Control-Allow-Headers', 'Content-Type');
    res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
    res.header('access-Control-Allow-Origin', '*');
    next();
    });
    
    0 讨论(0)
  • 2020-12-11 04:32

    Open chrome inspect tool, switch to Network tab and inspect the request Angular2 sent.

    In Headers->Response Headers, check whether there is Access-Control-Allow-Origin:* (I bet not)

    If you are building an API, the easiest workaround is to add

    if (Request::is("api/*")) {
        header("Access-Control-Allow-Origin: *");
        header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Authorization, If-Modified-Since, Cache-Control, Pragma");
    }
    

    in the beginning of routes.php, using a Middleware would be a better approach, but make sure it is working properly and adding the Access-Control-Allow-Origin to the response header.

    0 讨论(0)
  • 2020-12-11 04:37

    Ok. seem like need to configure apache for it.

    i'm using xampp webserver, and I had to edit my httpd.conf as explained here to solve this.

    Added this line:

    Header set Access-Control-Allow-Origin "http://localhost:3000"
    

    solved my problem.

    Restarting apache is neccessary.

    0 讨论(0)
提交回复
热议问题