Есть ли способ для клиентского приложения работать с сервером, на котором не установлен CORS? - PullRequest
0 голосов
/ 30 мая 2019

Я хочу позвонить стороннему настольному приложению, работающему в системе пользователя, у которого открыт порт на 3000, и когда пользователь открывает мой веб-сайт, я делаю запрос на его локальный хост: порт 3000 и получаю данные , но в стороннем приложении не установлены заголовки ответа для CORS, поэтому я не могу использовать эту стратегию для синхронизации. Кто-нибудь знает способ сделать это? Здесь я использовал ngrok для туннелирования и до сих пор не могу это сделать.

xhr.open("POST", 'https://576b4cc1.ngrok.io', true);
//Send the proper header information along with the request
xhr.setRequestHeader("Content-Type", "text/plain");
xhr.onreadystatechange = function () { // Call a function when the state changes.
    if (this.readyState === XMLHttpRequest.DONE && this.status === 200) {
        // Request finished. Do processing here.
        console.log("In ready state exchange: " + xhr.responseText);
        resolve();
    }
}
xhr.onload = function (data) {
    console.log("In onload : " + data);
}
xhr.onerror = function (err) {
    console.log("In error: " + JSON.stringify(err, ["message", "arguments", "type", "name"]));
    console.log('Data incase : ' + xhr.statusText);
}
xhr.send(reqObj.data);

1 Ответ

0 голосов
/ 30 мая 2019

Вы можете запустить браузер из командной строки с флагом отключения веб-безопасности, например, с помощью chrome вы можете сделать следующее:

chrome --disable-web-security

Есть также хромированные плагины, которые позволяют вам делать это как https://chrome.google.com/webstore/detail/allow-cors-access-control/lhobafahddgcelffkeicbaginigeejlf

...