Проблема с CORS при запросе на сторонный сервис с клиентского кода
Задача, вызвать сторонний сервис на из клиентской схемы что бы миновать сервер приложений на котором нет интернета. Так же сервис имеет ограничение запросов 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?