Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Node js / Angular js - CAUTION: Provisional headers are shown [duplicate]

This is my Angular js piece code:

$http({
                method:'POST',
                withCredential:true,
                url:$scope.config.app_ws+'auth/signup',
                data:{user:$scope.auth}
            }).success(function(status, response){

                console.log(response);
            }).error(function(status, response){
                alert(response+'Bummer :( , an error occured plese retry later. ');
            });

This is my Node.js piece backend:

 var allow_cross_domain= function(req, res, next) {
      res.header('X-Powered-By', 'hey.heyssssssss.org');

      var oneof = false;
      if(req.headers.origin) {
        res.header('Access-Control-Allow-Origin', req.headers.origin);
        oneof = true;
      }
      if(req.headers['access-control-request-method']) {
        res.header('Access-Control-Allow-Methods', req.headers['access-control-request-method']);
        oneof = true;
      }
      if(req.headers['access-control-request-headers']) {
        res.header('Access-Control-Allow-Headers', req.headers['access-control-request-headers']);
        oneof = true;
      }
      if(oneof) {
        res.header('Access-Control-Max-Age', 60 * 60 * 24 * 365);
      }
    // intercept OPTIONS method
    if (oneof && req.method == 'OPTIONS') {
      res.send(200);
    } else {
      next();
    }
    }

    app.use(allow_cross_domain);

    app.post('/auth/signup', function (req, res) { res.send('wtff'); });

I'm just calling POST localhost:3000/auth/signup from Angular to Node, but i get **CAUTION : Provisional headers are shown.** in chrome console.

Chrome (CAUTION):

enter image description here

Firefox (NO RESPONSE for about 30/60 seconds and then the alert() comes up :/ ):

enter image description here

what this could be?

IF i use GET everything is ok, is just with POST that i get troubles how is that possible?

like image 712
itsme Avatar asked Feb 07 '14 14:02

itsme


People also ask

Why provisional headers are shown?

One of the most common reasons that causes "Provisional headers are shown" are Chrome extensions. The resource you're trying to load could be being blocked by an extension, usually ad-blockers such as AdBlock, uBlock Origin or Adguard.

What are headers in Nodejs?

The header tells the server details about the request such as what type of data the client, user, or request wants in the response. Type can be html , text , JSON , cookies or others.


1 Answers

personaly I use this "reset" method in angular:

app.config(['$httpProvider', function ($httpProvider) {
  //Reset headers to avoid OPTIONS request (aka preflight)
  $httpProvider.defaults.headers.common = {};
  $httpProvider.defaults.headers.post = {};
  $httpProvider.defaults.headers.put = {};
  $httpProvider.defaults.headers.patch = {};
}]);
like image 182
Got The Fever Media Avatar answered Nov 03 '22 00:11

Got The Fever Media