2016-02-19 6 views
8

Я использую fetch для вызова службы сообщений, и получаю сообщение об ошибке Fetch API cannot load http://localhost:8080/user/login. Ответ для предполета недействителен (перенаправление). Status code: 302 Found. Переменная «данные» является 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

ошибка означает, что URL вы удара реагирует с перенаправлением на другой URL.

В моем случае я запрашивал ресурсный лоток http вместо https, поэтому сервер отвечал на перенаправление на протокол https.

Другие советы here.

3

Возможно, существует несколько возможных причин получения этой ошибки.

  • Как @toomuchdesign упомянул возможную причину, почему происходит потому, что вам может понадобиться, чтобы сделать запрос через https вместо http.
  • Попробуйте добавить / к URL. 'http://localhost:8080/user/login/' вместо 'http://localhost:8080/user/login'. Как можно перенаправить запрос preflight/OPTIONS.
+0

Аналогичная проблема решена в пункте 2, то есть добавление '/'. Можете ли вы подробнее рассказать о том, почему это происходит? – ajaykumar