IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

XMLHttpRequest erreur 403


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2016
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2016
    Messages : 15
    Par défaut XMLHttpRequest erreur 403
    Bonjour,

    Je rencontre un problème lors de l'utilisation de la fonction XMLHttpRequest, j'ai ce message qui apparaît :
    index.html:44 OPTIONS https://www.wecook.fr/web-api/recipes?id=1 403 (Forbidden)
    (anonymous) @ index.html:44
    index.html:44 XMLHttpRequest cannot load https://www.wecook.fr/web-api/recipes?id=1. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access. The response had HTTP status code 403.


    Je ne sais pas d'ou vient ce problème, voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var httpR = new XMLHttpRequest();
    	httpR.open('GET', "https://www.wecook.fr/web-api/recipes?id=1",false);
    	httpR.setRequestHeader('Authorization', 'Bearer vy...');
    	httpR.send(null);
    Ce qui est encore plus étonnant c'est que ce code fonctionne avec postman et node (je recupère un fichier texte).

    Quelqu'un aurait une idée sur ce problème ?

  2. #2
    Expert confirmé
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Par défaut
    Manifestement tu essayes de faire une requête cross origin. Le navigateur détecte que le domaine vers lequel tu essayes de faire une requête n’est pas le même que celui de ton site, et envoie une preflight request (une requête HTTP OPTIONS) pour demander l’autorisation. Tout ceci se fait automatiquement, ça fait partie du mécanisme CORS.

    Si le serveur wecook accepte les requêtes cross origin, il envoie normalement un en-tête Access-Control-Allow-Origin, et si la valeur correspond, la requête est autorisée. Dans ton cas, le message d’erreur dit que la requête n’a pas été autorisée.

    Le problème vient probablement du fait que ton Origin est null. Tu ne ferais pas tes tests en local avec le protocole file:// par hasard ?

    Remarque : hors sujet mais importante – avec ce troisième paramètre false lors de l’appel à open, ta requête Ajax est synchrone. C’est une très mauvaise pratique. Supprime ce troisième paramètre, oublie qu’il existe, et utilise une fonction de rappel.
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

Discussions similaires

  1. Erreur 403 sur Apache
    Par Mamoudou Ly dans le forum Apache
    Réponses: 1
    Dernier message: 14/08/2006, 14h21
  2. erreur 403 serveur
    Par ghita269 dans le forum Langage
    Réponses: 7
    Dernier message: 12/07/2006, 15h07
  3. htaccess - erreur 403 - protéger un dossier image
    Par lepierre dans le forum Apache
    Réponses: 2
    Dernier message: 30/06/2006, 13h59
  4. Réponses: 5
    Dernier message: 23/06/2006, 14h22
  5. Erreur 403 Forbidden
    Par cybernetique dans le forum Apache
    Réponses: 7
    Dernier message: 13/04/2005, 14h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo