Partage
  • Partager sur Facebook
  • Partager sur Twitter

Blocage d’une requête multi-origines (Cross-Origin

la politique « Same Origin »

    13 juillet 2016 à 22:12:23

    Bonjour je travaille sur un système de géolocalisation de bus mais j'ai un problème quand j'essaie de récupérer un json j'ai cette erreur :

    "Blocage d’une requête multi-origines (Cross-Origin Request) : la politique « Same Origin » ne permet pas de consulter la ressource distante située sur https://applications002.brest-metropole.fr/WIPOD01/Transport/REST/getGeolocatedVehiclesPosition?format=json&route_id=3&trip_headsign=Oceanopolis. Raison : l’en-tête CORS « Access-Control-Allow-Origin » est manquant."

    voila mon code jc :

    // create a map in the "map" div, set the view to a given place and zoom
            var map = L.map('map', {
            zoom: 15,
            center: [48.37699,-4.52575],
            //maxZoom :18,
            //minZoom : 18
            });

            var marker = L.marker([48.37699,-4.52575]).addTo(map);
            marker.bindPopup("<b>Maison</b>").openPopup();

            // add an OpenStreetMap tile layer
            L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'}).addTo(map);

            var json = $.getJSON("https://applications002.brest-metropole.fr/WIPOD01/Transport/REST/getGeolocatedVehiclesPosition?format=json&route_id=3&trip_headsign=Oceanopolis");

            document.write(json);

    • Partager sur Facebook
    • Partager sur Twitter
      13 juillet 2016 à 22:25:15

      Hello je suis pas très loin de Brest je ne connais pas assez le js pour t'aider mais ça fait plaisir un voisin ! je tenais a le dire bonne continuation.
      • Partager sur Facebook
      • Partager sur Twitter
      Aucun rêve n'est trop grand, aucun rêveur n'est trop petit :)
      Anonyme
        13 juillet 2016 à 22:30:45

        Il faut que ta requête contiennent le header Access-Control-Allow-Origin est que ce dernier est la valeur Allow.
        • Partager sur Facebook
        • Partager sur Twitter
          13 juillet 2016 à 22:31:36

          Et tu peux me donner un exemple stp pour que je vois ?
          • Partager sur Facebook
          • Partager sur Twitter
          Anonyme
            13 juillet 2016 à 22:34:52

            $.getJSON("https://applications002.brest-metropole.fr/WIPOD01/Transport/REST/getGeolocatedVehiclesPosition?format=json&route_id=3&trip_headsign=Oceanopolis&callback=?");

            Note:  enfaite, les serveurs acceptent le callback=? comme étant le Access-Control-Allow-Origin=Allow

            On peut avoir un exemple de a quoi ca ressemble? J'suis intéressé.

            -
            Edité par Anonyme 13 juillet 2016 à 22:37:24

            • Partager sur Facebook
            • Partager sur Twitter
              13 juillet 2016 à 22:46:25

              Je te prépare un exemple.

              Juste la méthode getJSON de JQuerry retourne un string ou ?

              Mon json recemble à ça :

              [{"Advance":"00:00:00","Cape":"183","Delay":"00:01:03","Lat":"48.4100446078588","Lon":"-4.49683920245102","Pos":"2022","State":"LIGN","VehicleType":"BUSART"}]

               donc un simple json.Lat suffit pour récupérer la latitude ou ?

              -
              Edité par thebzhcraft 13 juillet 2016 à 23:09:10

              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
                14 juillet 2016 à 0:19:34

                Met un :

                var parsed = JSON.parse(json); afin de "parser" le JSON, ensuite tu pourra récuperer la latitude par parsed[0]['lat']

                • Partager sur Facebook
                • Partager sur Twitter
                  14 juillet 2016 à 9:24:43

                  Nop le json que je récupère via :

                  $.getJSON("https://applications002.brest-metropole.fr/WIPOD01/Transport/REST/getGeolocatedVehiclesPosition?format=json&route_id=3&trip_headsign=Oceanopolis&callback=?");

                  doit être corrompu ou je ne sais pas car je n'arrive pas à le parser :

                  (dans la console firefox)

                  JSON.parse(json);

                  SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Anonyme
                    14 juillet 2016 à 13:21:39

                    En fait, il te retrouve directement un objet JS :).
                    • Partager sur Facebook
                    • Partager sur Twitter
                      14 juillet 2016 à 20:06:14

                      Le problème vient de mon getJson()

                      grace à curl j'ai réussi à voir que mon lien me redirige

                      jquery prend en compte les redirection ?

                      -
                      Edité par thebzhcraft 14 juillet 2016 à 23:09:16

                      • Partager sur Facebook
                      • Partager sur Twitter
                      Anonyme
                        22 juillet 2016 à 12:10:39

                        Oui (il me semble)
                        • Partager sur Facebook
                        • Partager sur Twitter
                          17 mars 2018 à 16:19:42

                          bonjour j'ai le même souci que toi @ as solutionné merci peux tu m' aidervoila mon réponse console

                          "Blocage d’une requête multiorigines (Cross-Origin Request) : la politique « Same Origin » ne permet pas de consulter la ressource distante située sur http://mock-api.voodoo.io/acquisition?api_key=maclblalallalalalalalal&start=2018-03-15&end=2018-03-16&country=fr&columns=day,clicks,impression,ctr,cost,country,ad_type,platform,application,package_name. Raison : l’en-tête CORS « Access-Control-Allow-Origin » est manquant."

                          j'ai un fichier app.js pour iniialiser mon node et un fichier findmydata.js (qui requete l'api distante ) Get

                          • Partager sur Facebook
                          • Partager sur Twitter
                          beau gosse tu l'es ou pas dans la vie ? moi j'ai pas choisi ... je suis beau gosse :)
                            21 mai 2018 à 22:47:50

                            J'ai trouvé une solution qui a fonctionné pour moi.

                            Je installer cors qui permet d'autoriser CORS sur le server:

                            https://github.com/expressjs/cors

                            Ils expliquent bien comment le mettre en place.

                            J’espère que cela a pu vous aider

                            • Partager sur Facebook
                            • Partager sur Twitter

                            Blocage d’une requête multi-origines (Cross-Origin

                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                            • Editeur
                            • Markdown