2016-11-11 2 views
1

J'essaie d'utiliser l'API GraphHopper Route Optimization pour résoudre le VRP avec les micros et les livraisons. Je veux le tester avec un exemple de https://graphhopper.com/dashboard/#/editor. Ma demande va comme ceci:Comment faire un appel AJAX à l'API GraphHopper Route Optimization?

var vrp = { 
 
     "vehicles": [ 
 
     { 
 
      "vehicle_id": "my_vehicle", 
 
      "start_address": { 
 
      "location_id": "berlin", 
 
      "lon": 13.406, 
 
      "lat": 52.537 
 
      } 
 
     } 
 
     ], 
 
     "services": [ 
 
     { 
 
      "id": "hamburg", 
 
      "name": "visit_hamburg", 
 
      "address": { 
 
      "location_id": "hamburg", 
 
      "lon": 9.999, 
 
      "lat": 53.552 
 
      } 
 
     }, 
 
     { 
 
      "id": "munich", 
 
      "name": "visit_munich", 
 
      "address": { 
 
      "location_id": "munich", 
 
      "lon": 11.57, 
 
      "lat": 48.145 
 
      } 
 
     }, 
 
     { 
 
      "id": "cologne", 
 
      "name": "visit_cologne", 
 
      "address": { 
 
      "location_id": "cologne", 
 
      "lon": 6.957, 
 
      "lat": 50.936 
 
      } 
 
     }, 
 
     { 
 
      "id": "frankfurt", 
 
      "name": "visit_frankfurt", 
 
      "address": { 
 
      "location_id": "frankfurt", 
 
      "lon": 8.67, 
 
      "lat": 50.109 
 
      } 
 
     } 
 
     ] 
 
    }; 
 

 
    $.ajax({ 
 
    beforeSend: function(xhrObj){ 
 
     xhrObj.setRequestHeader("Content-Type","application/json"); 
 
     xhrObj.setRequestHeader("Accept","application/json"); 
 
    }, 
 
    type: "POST", 
 
    url: 'https://graphhopper.com/api/1/vrp/optimize?key=[...]',  
 
    data: vrp,    
 
    dataType: "json", 
 
    success: function(json){ 
 
     console.log(json); 
 
    }});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

Je reçois la réponse suivante: screenshot

Waht peut être le problème ici?

Répondre

1

J'ai trouvé une solution dans une autre question so Send JSON data with jQuery.

Il suffit d'utiliser data: JSON.stringify(vrp)

+0

Merci, ça fonctionne) –