Задача, вызвать сторонний сервис на из клиентской схемы что бы миновать сервер приложений на котором нет интернета. Так же сервис имеет ограничение запросов 1 раз в 1,5 секунды с одного IP. По этой причине было принято решение вызывать на клиентской части, для получения разного IP и минимизации ожидания в очереди.
Проблема что при вызове получаем блокировку запроса CORS
eGovService: function(scope, requestUrl, accountBin, country, callback){
var regURL = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;
if (requestUrl && regURL.test(requestUrl)) {
var url = requestUrl.replace("[ktAccountBin]", accountBin);
var settings = {
"url": url,
"type": "GET",
"timeout": 0,
"crossDomain": true,
"beforeSend": function(xhr){
xhr.withCredentials = true;
}
};
$.ajax(settings)
.done(function (response) {
if (response.length > 0 && response[0].nameru) {
scope.getAccountOwnership(scope, response[0].nameru, country, callback);
} else if(response.success && response.obj.name) {
scope.getAccountOwnership(scope, response.obj.name, country, callback);
} else {
callback.call(scope, true, 1);
}
})
.fail(function(error){
callback.call(scope, true, 2);
});
} else {
callback.call(scope, true, 3);
}
},
Нравится
Добрый день.
Проверьте, чтобы при отправке запроса присутствовали следующие хедеры:
Access-Control-Allow-Origin
и обязательно BPMCSRF
Более подробно - https://stackoverflow.com/questions/20035101/why-does-my-javascript-cod…
Также возможно вам помогут следующие статьи:
https://community.terrasoft.ua/articles/veb-servis-dostupnyi-bez-avtori…
и
https://community.terrasoft.ua/questions/krossdomennyy-zapros-iz-js
Григорьев Михаил Алексеевич,
не добавление в IIS секции, не в ajax запрос не помогает, и судя по статьям не помогло людям там
Александр Тыра,
а вы работаете с https или http?