Хорошо, поэтому у меня есть приложение AngularJS с Laravel 4 в качестве backend. То, как я хочу развиваться, - это запустить Laravel на отдельном сервере (через сервиз artisan) и угловатым на отдельном, с тем, что йомен собирает для меня весь этот хрюкающий сервер.
Однако после попытки получить данные из бэкэнда Laravel 4 (который служит REST api) через Angulars $ http все, что я получаю, является сообщением об ошибке 0. Вот мой код:
Угловые службы REST:
app.factory('RestService', function($http){
var restUrl = 'http://localhost:8000/api/v1/tags';//<-- rest api served with php artisan
return {
getResource: function(){
return $http({method: 'get', url: restUrl})
}
}
});
Угловой контроллер:
app.controller('TagCtrl', function($scope, RestService){
$scope.getTagList = RestService.getResource()
.success(function(){
console.log('Success!');
})
.error(function(data, status, headers, config){
console.log(data);//<--returns nothing
console.log(status);//<--returns 0
console.log(headers);//<-- returns function
console.log(config);//<-- returns object
});
});
А вот мой Laravel 4 маршрут:
Route::get('tags', function(){
return "This is a temporary message to test routing";
});
Теперь, как все это работает, если Я не пользуюсь сервисом grunt и ремесленником и помещаю все это в одну и ту же папку (угловая внутренняя папка larvels и т. Д.). который я намереваюсь делать, когда я перехожу к производству, но потому, что я хочу минимизировать и делать другие вещи с ворчанием, прежде чем я хочу, чтобы эти элементы были разделены на данный момент.
С некоторыми поисковыми системами, я предполагаю, что проблема связана с запросом CORS (запрос на перекрестный поиск), но я не могу понять, как решить проблему в этой настройке.
Запустите его в Chrome с помощью инструментов разработчика. Если клиент/api скрипта находится на локальном хосте, проблем с CORS нет. – Whisher