Я пытаюсь создать пример приложения, которое будет захватывать данные, используя JSONP для заполнения. У меня он выставлен на http://angular.onagrag.com/ и нажав на регистрацию.angularjs + jsonp возвращает сбой
Файл Я пытаюсь загрузить это в http://api.onagrag.com/data.json
Когда доступ http://angular.onagrag.com/register он запускает метод ошибки объекта (и он стреляет дважды)
здесь угловую JS файл, который я используя (он также находится по адресу http://angular.onagrag.com/js/test.js
Он работает нормально, если я использую локальные данные (например, используйте метод $ http.get вместо метода $ http.jsonp), но не будет работать с jsonp. !
var App = angular.module('popdust', ['ngResource']).config(['$locationProvider', function($location) {
$location.html5Mode(true).hashPrefix('!')
}]);
App.config(['$routeProvider', function($routes) {
$routes.when('/register',{
templateUrl : '/templates/register.html',
controller : RegisterCtrl
});
$routes.when('/',{
templateUrl : '/templates/home.html',
controller : HomeCtrl
});
}]);
var HomeCtrl = function($scope, $http, $location) {
$scope.title = 'We are home';
$scope.obj = ['one', 'two','three'];
};
var RegisterCtrl = function($scope, $http, $location) {
$scope.title = 'Register!';
$scope.handleData = function(data){
$scope.fields = data;
}
$scope.fetchjsonp = function(){
$http.jsonp('http://api.onagrag.com/data.json?callback=JSON_CALLBACK').success(function(data){
alert("success");
}).error(function(data, status, headers, config) {
alert("YOU FAIL");
});
}
$scope.fetch = function(){
$http.get('js/data.json').success($scope.handleData);
}
$scope.fetchjsonp();
};
HomeCtrl.$inject = ['$scope','$http','$location'];
RegisterCtrl.$inject = ['$scope','$http','$location'];
Я понимаю это и получил его, если я добавлю универсальную функцию в javascript JSON_CALLBACK(), но как испечь обратный вызов в контроллер .. так что у меня есть доступ к объекту $ scope? – user801745
Вы делаете это в функции успеха '.success (function (data) {$ scope.data = data; ...' – joakimbl
Я думаю, что я просто не следую ... включаю ли обратный вызов = JSON_CALLBACK в URL-адрес в метод jsonp? Если я не получаю ошибку ... также он вызывает вызов метода ошибки и никогда не получает успеха ... можете ли вы заглянуть за мои изменения и сообщить мне, если я что-то делаю? Неправильно? – user801745