2017-10-17 19 views
0

Je fais une demande à la troisième option sur cette page: http://www.groupkt.com/post/5c85b92f/restful-webservice-to-get-and-search-states-and-territories-of-a-country.htmObtenir 200 réponse, mais aussi une erreur CORS?

Im revenir la réponse que je veux, mais je reçois aussi une erreur CORS qui fait aucun sens pour moi ... Ils ont dit qu'ils ont CORS permis

results.component.ts: 28 résultats; state = 1 Impossible de charger http://services.groupkt.com/state/search/USA?text=: en-tête Non 'Access-Control-Allow-Origin' est présent sur la ressource demandée.

let headers = new Headers(); 
     headers.append('Content-Type', 'text/plain'); 
     let options = new RequestOptions({ headers: headers }); 
     return this.http.get('http://services.groupkt.com/state/search/USA?text=cal', options) 
     .map(this.extractData)  
     .catch(this.handleError); 

La seule façon que j'ai pu contourner ce problème est de télécharger une extension de chrome qui fixe CORS. Mais c'est un projet que j'ai besoin de transmettre, donc je doute que dire à quelqu'un de télécharger une extension va si bien se passer ...

Oui J'ai effacé le cache du navigateur.

+0

Fait partie de votre projet d'accéder à cette ressource (services.groupkt.com) du côté client? Je demande, parce que si votre projet impliquait effectivement de passer cette ressource par le biais de votre propre serveur, vous avez encore du travail à faire. De plus, vous ne corrigez pas ** CORS, vous le contournez. CORS est une politique de sécurité pour protéger les utilisateurs. – zero298

+0

'headers.append ('Content-Type', 'text/plain');' - Cela n'a aucun sens. Vous faites une demande GET. Il n'y a pas de contenu dans le corps de la requête pour décrire le type de contenu. – Quentin

+0

Tout dépend du serveur. Copie possible de https://stackoverflow.com/questions/35553500/xmlhttprequest-cannot-load-https-www-website-com – JustinJmnz

Répondre

1

Im revenir la réponse que je veux, mais je reçois aussi une erreur CORS qui fait aucun sens pour moi

CORS erreurs sont générées par le client lorsque le serveur ne donne pas explicitement l'autorisation de JavaScript pour lire la réponse à travers les origines.

Ceci est entièrement indépendant du fait que la requête a généré une bonne réponse (c'est-à-dire si elle était de 200 OK ou autre chose).

Ils ont dit qu'ils ont CORS a permis

Soit:

  • Ils ont tort ou
  • Ils ont CORS permis, mais seulement dans des conditions non couverts par la demande que vous avez fait (par exemple pour une URL différente)
+0

Hm okay. Il semble qu'il n'y a rien que je puisse faire de ma part pour faire une demande à cette adresse url alors .. – Drewson