Jamie888 Ответов: 1

Вызов Web API получение ошибки 401 в iOS safari


Привет, у меня есть функция $.ajax, где у меня есть прямой вызов api к базе данных для извлечения данных. Хотя я проверил, что все функции работают хорошо и возвращаемые данные верны, они не работают после того, как я развернул их на сервере и просматриваю свое веб-приложение с помощью iOS Safari.
Статический интерфейс загружен, но не данные. Ниже приведены мои примеры кодов:
var baseUrl = 'https://anythingAPI/;'

$.ajax({
       type: 'GET',
       url: baseUrl+ 'api/Customer/GetCustomerDetails',
       data: {},
       success: function (result) {
            console.log('Result Returned.')
       }
});


Сначала я подумал, что не передал учетные данные для аутентификации, но Android Chrome работает хорошо. Только Safari не может генерировать данные.

Что я уже пробовал:

1. Удалите прямой вызов API и замените его обычным url-адресом. Например,
/Customer/GetCustomerDetails
в url и Safari работает нормально.
2. Протестированы на Android Chrome и браузеры для Windows(ноутбук) и все работает нормально.

1 Ответов

Рейтинг:
0

Sagar-Jaybhay

Вам нужно включить CORS и внести изменения в web.config

<pre><httpProtocol>
<customHeaders>
<!-- Allow Web API to be called from a different domain. -->
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Methods" value="*" />
</customHeaders>
</httpProtocol>


Richard Deeming

Это "CORS", а не "ядра". :)