2017-03-04 1 views
0

Nous avons l'application angulaire 2 et nous essayons d'utiliser l'API Deezer, mais quand j'essaie d'envoyer une requête GET à Deezer, j'obtiens l'erreur donnée. J'ai essayé beaucoup de solutions comme utiliser jsonp et ajouter 'Access-Control-Allow-Origin': '*' à .htaccess, mais aucun d'eux n'était utile. J'ai joint la fonction que j'utilise en service.Angulaire 2, non 'Access-Control-Allow-Origin'

XMLHttpRequest ne peut pas charger https://api.deezer.com/search/track?q=emin. Aucun en-tête 'Access-Control-Allow-Origin' n'est présent sur la ressource demandée. L'origine "www.example.net" n'est donc pas autorisée.

searchFromDeezer() { 
    let url = 'https://api.deezer.com/search/' + this.search_type + '?q=' + this.search_value + ''; 
    return this._http.get(url).map(res=>res.json()) 
} 

Comment je l'ai utilisé jsonp:

like below. 

searchFromDeezer() { 
    let url = 'https://api.deezer.com/search/' + this.search_type + '?q=' + this.search_value + '?callback=JSONP_CALLBACK'; 
    return this._jsonp.get(url).map(res=>res.json()) 
} 
+0

utilisez JSONP voir le lien ci-dessous: [link] (http://stackoverflow.com/questions/36289495/how-to-make-a-simple-jsonp-asynchronous-request-in-angular-2) –

+0

As J'ai mentionné que je l'ai déjà utilisé, j'ai cette erreur: Uncaught SyntaxError: Jeton inattendu: vendor.bundle.js: 59960 EXCEPTION: Réponse avec le statut: 200 Ok pour l'URL: –

+1

http://stackoverflow.com/questions/23185964/how-do-i-use-the-deezer-api/23186126 # 23186126 – sideshowbarker

Répondre

0

SOLVED

Je tentais d'utiliser jsonp mais devenais erreur, problème a été corrigé après avoir ajouté
'& sortie = jsonp & callback = JSONP_CALLBACK ' à mon lien.