2016-05-24 2 views
0

Я пытаюсь сделать запрос на отправку от AngularJS в WebAPI в другом домене.AngularJS ОПЦИИ запрос на веб-интерфейс API

$http({ 
    method: 'POST', 
    url: 'http://www.test.com/api/app/controller', 
    data: postdata, 
    headers: { 
     'Content-Type': 'application/json' 
    } 
}) 
.then(function(response) { 
    // Do stuff 
}, function() { 
    // Show error 
}) 
.finally(function() { 
    // Cancel loading indicator 
}); 

Я считаю, что веб-API правильно настроен для обработки запросов CORS. Если я сделаю запрос CORS OPTIONS с помощью клиента Chrome Advanced REST, вернутся правильные заголовки и код ответа 200.

Когда я делаю вызов POST выше, выполняется запрос предварительной проверки. Это всегда заканчивается кодом 504. Записи в моем приложении Application_BeginRequest никогда не попадают (что происходит при вызове из плагина Chrome).

В чем разница между звонками из AngularJS и плагином Chrome? Оба запускаются с одной машины, и AngularJS работает в приложении на localhost. Те же заголовки устанавливаются в обоих вызовах.

ответ

0

Это была глупая ошибка от моего имени. Я отвечаю на вопрос (а не на удаление) на случай, если кто-то сделает то же самое.

я указывал на сервис, содержащий опечатку:

url: 'http://www.test2.com/api/app/controller', 

Вместо:

url: 'http://www.test.com/api/app/controller', 

Мой CORS запрос предполетной работал без проблем, он не только никогда не подобрались к правильный сервер.

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