2015-05-05 2 views
3

В основном я использую метод POST, но он автоматически преобразуется в метод OPTIONS. Я знаю, что браузер делает это, но также читает, что это нормально, и должен получить ответ как 201, но в моем случае он не ведет себя так, как ожидалось, я также попробовал Access-Control-Allow-Methods в заголовках запросов, но ничего не получил ,Метод POST автоматически преобразовывается в ОПЦИИ

Это то, что мой запрос выглядит следующим образом:

OPTIONS http://xyz/abc 
Accept: application/json 
Content-Type: application/json 

Ответ:

405, Method Not Allowed 
Access-Control-Allow-Origin: * 
Date: Tue, 05 May 2015 06:15:19 GMT 
Connection: close 
Accept-Ranges: bytes 
Access-Control-Allow-Headers: authorization, content-type 
Content-Length: 0 
Access-Control-Allow-Methods: GET, PUT, POST, DELETE, HEAD 

Может кто-нибудь сказать мне причину этой проблемы и что может быть точную причину того же после того, как достаточно исследование все отлично выглядит в моем конце. Спасибо заранее.

+0

Ваш ответ OPTIONS. не так ли? –

+0

Это запрос на перекрестный домен? –

+0

ОПЦИИ Ответ 405, как может видеть, я думаю, что это может быть проблема с перекрестным доменом, не уверен. –

ответ

2

Возможно, вы наблюдаете предполетную проверку во время POST-запроса в совместном использовании ресурсов с перекрестными источниками. Я не знаю, как ваш веб-сервер должен быть настроен для поддержки этого, но эта статья в Википедии может быть первой помощью: http://en.wikipedia.org/wiki/Cross-origin_resource_sharing

Самое простое решение - сделать запрос POST в том же месте, что и там, где вы загружаете с веб-страницы. Обратный прокси-сервер может быть разумным решением.

Смежные вопросы