При вызове REST API он не работает - PullRequest
0 голосов
/ 26 октября 2018

Это мой контроллер на данный момент

.controller('HotelsController', ['$http', HotelsController]);

function HotelsController($http) {
  var vm = this;
  $http({
    method: 'GET',
    url: '/api/hotels'
  }).then(function successCallback(response) {
    console.log(response);
  }, function errorCallback(response) {
    console.log(response);
  });
}

, но я получаю сообщение об ошибке

НЕ МОЖЕТ ПОЛУЧИТЬ / api / hotels

а это мой API

module.exports.hotelsGetAll = function (req, res) {
        Hotel
            .find()
            .skip(offset)
            .limit(count)
            .exec(function (err, hotels) {
                if (err) {
                    res
                        .status(500)
                        .json(err);
                } else {
                    console.log("Found Hotels ", hotels.length);
                    res
                        .json(hotels);
                }

            })
    };

какие-либо предложения, пожалуйста?

Ответы [ 2 ]

0 голосов
/ 27 октября 2018

Спасибо за помощь! Кроме того, я добавил эти строки кода в файл моего сервера (app.js)

app.all("/api/*", function (req, res, next) {
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Headers", "Cache-Control, Pragma, Origin, Authorization, Content-Type, X-Requested-With");
    res.header("Access-Control-Allow-Methods", "GET, PUT, POST");
    return next();
});
0 голосов
/ 26 октября 2018

Вы должны добавить свой URL-адрес хоста API перед выполнением http-запроса.

Отредактируйте свой контроллер:

.controller('HotelsController', ['$http', HotelsController]);
function HotelsController($http) {
  var vm = this;
  $http({
    method: 'GET',
    url: 'http://yourhostapiurl/api/hotels' //Append the url of your api
  }).then(function successCallback(response) {
    console.log(response);
  }, function errorCallback(response) {
    console.log(response);
  });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...