title: Angular 2 Token: Response for preflight has invalid HTTP status code 400
body: <p>I have an Angular2/TypeScript application running i Visual Studio Code.</p>
  
  <p>An API running in VS 2015. This is the API project: <a href="http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api" rel="noreferrer">http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api</a></p>
  
  <p>I can use the API and create new users, but when I try to login(Use the Token function), then I get the following error:
  <strong>XMLHttpRequest cannot load <a href="https://localhost:44305/Token" rel="noreferrer">https://localhost:44305/Token</a>. Response for preflight has invalid HTTP status code 400</strong></p>
  
  <p>The header looks like this:</p>
  
  <pre><code>Request URL:https://localhost:44305/Token
  Request Method:OPTIONS
  Status Code:400 
  Remote Address:[::1]:44305
  Response Headers
  cache-control:no-cache
  content-length:34
  content-type:application/json;charset=UTF-8
  date:Wed, 10 Aug 2016 19:12:57 GMT
  expires:-1
  pragma:no-cache
  server:Microsoft-IIS/10.0
  status:400
  x-powered-by:ASP.NET
  x-sourcefiles:=?UTF-8?B?QzpcQ2hlY2tvdXRcQVBJXzJ2czJcQVBJXEFQSVxUb2tlbg==?=
  Request Headers
  :authority:localhost:44305
  :method:OPTIONS
  :path:/Token
  :scheme:https
  accept:*/*
  accept-encoding:gzip, deflate, sdch, br
  accept-language:en-US,en;q=0.8,da;q=0.6,nb;q=0.4
  access-control-request-headers:authorization
  access-control-request-method:POST
  cache-control:no-cache
  origin:http://evil.com/
  pragma:no-cache
  referer:http://localhost:3000/signin
  user-agent:Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36
  </code></pre>
  
  <p>My angular service looks like this:</p>
  
  <pre><code> loginAccount(account: Account): Observable&lt;string&gt; {        
      var obj = { Email: account.Email, Password: account.Password, grant_type: 'password' };
          let headers = new Headers({ 'Content-Type': 'application/json' });
          let options = new RequestOptions( {method: RequestMethod.Post, headers: headers });
  
          let body = JSON.stringify(obj);
          console.log('loginAccount with:' + body);
  
           return this._http.post('https://localhost:44305/Token',  body, options)
                               .map(this.extractData)
                               .catch(this.handleError);
  }
  </code></pre>
  
  <p>When I use the AJAX funtions that a in the API project: <a href="http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api" rel="noreferrer">http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api</a> then it works fine ?? What am I doing wrong in the Angular POST request ?</p>