2017-07-05 1 views
0

Je suis en train de cette erreur et quand je clique sur le lien, il montre à côté de lui, il me faut une certaine réponse JSON:SyntaxError inattendue: jeton inattendu: à partir des données JSON (AngularJS api demande)

{"link-canonical":"https:\/\/myanimelist.net\/anime\/1\/Cowboy_Bebop",.....} 

Je fais simplement une requête get pour un api anime. Apparemment ce colon dans le json qu'il récupère me donne l'erreur ..? Je n'ai aucune idée. Mon code pour la demande fonctionne vraiment mais je viens de l'essayer avec une autre URL qui fonctionne bien.

C'est le code de la demande:

myApp.controller('mainController', ['$scope', '$resource', function($scope, $resource) { 

$scope.animeApi = $resource('http://jikan.me/api/anime/1', {callback: "JSON_CALLBACK"}, { get: { method: "JSONP" }}); 

$scope.animeResult = $scope.animeApi.get({}); 
console.log($scope.animeResult); 

}]);

+0

pourquoi vous backslashing slash? –

+0

@VictoryOsikwemhe thats le json qui a été retourné dans la réponse. – Jessica

+0

Eh bien '{méthode:" JSONP "}' est clairement faux lorsque la réponse vient comme JSON – Bergi

Répondre

0

Donc, vous savez quoi faire:

let str = {"link-canonical":"https:\/\/myanimelist.net\/anime\/1\/Cowboy_Bebop"}; 
let data = JSON.parse(JSON.stringify(str)); 
+0

Après avoir ignoré magiquement l'erreur de syntaxe, elle devrait convertir un objet en une chaîne et ensuite analyser cette chaîne dans un objet? O.o – Andreas

+0

Erreur de syntaxe @Andreas? où? Ce n'est pas le JSON valide qu'elle a reçu de ce serveur d'anime. Après stringify: {"link-canonique": "https://myanimelist.net/anime/1/Cowboy_Bebop"}, (J'espère que vous voyez la différence). Après analyse, elle a obtenu un objet JSON normal. – Angels