Я использую ServiceStack TypeScript Client "JsonServiceClient" в моем приложении. При нажатии кнопки я пишу эти строки кода.
let client:JsonServiceClient = new JsonServiceClient('http://ams-device-int.azurewebsites.net/');
client.setCredentials('testacc', 'Tes@2020');
client.get('/SourceDevice?Take=10').then((r) => {
debugger;
});
Когда этот код был выполнен, у меня возникла проблема с CORS в консоли разработчика.
Доступ к выборке в ' http://ams-device-int.azurewebsites.net/SourceDevice?Take=10 'из источника' http://localhost: 8080 'было заблокировано политикой CORS: Ответ на предпечатный запрос не проходит проверку контроля доступа: значение' Access ' Заголовок -Control-Allow-Origin 'в ответе не должен быть подстановочным знаком' * ', если режим учетных данных запроса' include '.
Я уже проверил с разработчиком службы, и CORS включил уже на всех началах, и на самом деле у нас есть веб-приложение, работающее с кодом AngularJS, и я использую $ http там, и оно работает нормально без каких-либо проблем. Я думаю, что я что-то упустил в этом JsonServiceClient, и он не отправляет правильные учетные данные, которые вызывают проблему.
С другой стороны, у меня есть этот код
const response = await fetch('http://ams-device-int.azurewebsites.net/SourceDevice?Take=10', {
method: 'GET', // *GET, POST, PUT, DELETE, etc.
//mode: 'same-origin', // no-cors, *cors, same-origin
cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached
//credentials: 'include', // include, *same-origin, omit
headers: {
'Content-Type': 'application/json',
"Authorization": `Basic ${btoa('testacc:Tes@2020')}`
// 'Content-Type': 'application/x-www-form-urlencoded',
},
});
let res = await response.json();
, и это работает нормально. Пожалуйста, помогите мне с тем, что я делаю ошибку.
С уважением, Джамиль