Не могу послать локальный запрос из моего js файла в node js оба на моем компе

171
07 ноября 2018, 03:10

Не могу послать локальный запрос из моего js файла в node js оба на моем компе , вот как я это делаю вот node js

var http=require('http');
var model={name:"aaaavava"}
http.createServer(function (request, response) {
   response.writeHead(200, {'Content-Type': 'text/plain'});
   response.end(JSON.stringify(model));
}).listen(8081);
// Console will print the message
console.log('Server running at http://127.0.0.1:8081/');

а вот как на него посылаю запрос

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<button onclick="loadPhones()" id="button">Загрузить json!</button>
 <script>
    function loadPhones() {
     var xhr = new XMLHttpRequest();
      xhr.open('GET', 'http://127.0.0.1:8081/', true);
      xhr.send();
      xhr.onreadystatechange = function() {
        if (xhr.readyState != 4) return;
       button.innerHTML = 'Готово!';
        if (xhr.status != 200) {
          alert(xhr.status + ': ' + xhr.statusText);
        } else {
          alert(xhr.responseText);
            document.write(xhr.responseText);
            console.log(JSON.parse(xhr.responseText));
        }
         }
      button.innerHTML = 'Загружаю...';
      button.disabled = true;
    }
  </script>
</body>
</html>

получаю такую ошибку

Failed to load http://127.0.0.1:8081/: The 'Access-Control-Allow-Origin' header has a value 'http://localhost:8888' that is not equal to the supplied origin. Origin 'null' is therefore not allowed access.

хотя через браузер работает nodejs файл

Answer 1

Подозреваю что вы при заходе на свою локальную страницу набираете http://localhost:8888 , однако хотите чтоб сервер на адресе 127.0.0.1 корректно принимал ваши аякс запросы.

Строго говоря localhost и 127.0.0.1 как доменное имя - не одно и то же.

Тут либо заходите на 127.0.0.1 либо запускайте оба сервера на localhost.

Можете забуриться в эту тему прочитав вот этот документ.

READ ALSO
Логирование неудачных попыток авторизации MySQL

Логирование неудачных попыток авторизации MySQL

Подскажите, как возможно осуществлять отправку логов (неудачных попыток авторизации MySQL) на удаленный сервер?

217
Как переместить вложенный div вправо?

Как переместить вложенный div вправо?

Как переместить вложенный div class="span3 reason_for_leaving" вправо?

196
Как сверстать эту таблицу

Как сверстать эту таблицу

Есть данная картинка-пример, не знаю как сверстать так, чтобы были линии разделяющие картинки

290