2016-02-19 18 views
8

fetchを使用してポストサービスに電話すると、エラーFetch API cannot load http://localhost:8080/user/loginが表示されます。プリフライトの応答が無効です(リダイレクト)。 Status code: 302 Found.変数「データ」はエラーがあなたがヒットしているURLは別のURLにリダイレクトして応答していることを意味し、JSON object {email: "[email protected]", password: "111"}Fetch APIでURLを読み込めません。プリフライトの応答が無効です(リダイレクト)

fetch('http://localhost:8080/user/login', { 
     method: 'post', 
     body : JSON.stringify(data), 
     headers: { 
      'Accept': 'application/json', 
      'Content-Type': 'application/json' 
     }, 
     dataType : 'json' 
    }) 

答えて

2

です。

私の場合、httpsの代わりにリソーストラフhttpを要求していたので、サーバーはhttpsプロトコルへのリダイレクトで応答していました。

その他のヒントhere

3

このエラーが発生する原因はいくつか考えられます。

  • @toomuchdesignあなたはhttps代わりのhttpを通じてリクエストを行う必要がある可能性があるためである理由考えられる理由を述べたように。
  • URLに/を追加してみてください。 'http://localhost:8080/user/login'の代わりに 'http://localhost:8080/user/login/'です。 preflight/OPTIONSリクエストからリダイレクトされる可能性があります。
+0

同様の問題は、ポイント2で解決されました。つまり、「/」が追加されました。なぜこれが起きているのかもっと詳しく説明できますか? – ajaykumar

関連する問題