Requête HTTP avec en-têtes ?Salut,
J'essaie de faire une requête REST pour extraire des données JSON avec le code suivant mais j'obtiens une erreur. Le propriétaire du site dit que je dois mettre la clé dans l'en-tête de la demande au lieu de l'ajouter. Comment fait-on cela en JSL avec une requête HTTP ?
Documentation du site ici : https://jsonodds.com/documentation
Merci d'avance,
-Mike
key = "cb8abaa5-9b10-11e8-9bbb-0b704e36c1ea"; // substitute your key
url = "https://jsonodds.com/api/odds";
request = New HTTP Request(
URL( url ), // the restAPI endpoint
Method( "GET" ),
Query String( // define key pairs
[["x-api-key" => key]] // JSL associative array
)
);
data = request << Send(); // send the request to the API
//ERREUR CI-DESSOUS
OBTENIR https://jsonodds.com/api/odds?x-api-key=cb8abaa5-9b10-11e8-9bbb-0b704e36c1ea
schannel : échec de InitializeSecurityContext suivant : erreur inconnue (0x80092012) - La fonction de révocation n'a pas pu vérifier la révocation du certificat.
Vide()
Re : Requête HTTP avec en-têtes ?En utilisant la solution d'Uday ci-dessus, j'ai pu faire fonctionner les choses. Il s'agit d'un morceau de code assez bref et vous devrez peut-être ajouter des variables pour l'URL, l'en-tête, etc.
Merci à Uday pour son aide...
-Mike
request = New HTTP Request(
URL( "https://jsonodds.com/api/odds" ), // the restAPI endpoint
Method( "GET" ),
headers( {"x-api-key: //yourkeyhere// "} ) // add your custom headers
);
dt = Open( Char To Blob( request << Send() ), "JSON" );
Re : Requête HTTP avec en-têtes ?@michaelgingras7 ,
Premiers pas avec REST dans JMP . N'hésitez pas à vous procurer cet addin, il est utile.
J'essaie en fait quelque chose de similaire de mon côté pour une API interne et je rencontre des problèmes. Bien qu'il existe une bonne documentation sur les exemples de publication, je ne vois pas beaucoup d'exemples dans le guide de script ou la référence de documentation concernant la création de requêtes Get avec des jetons d'accès. S'il y a quelque chose de spécifique que vous trouvez autour des demandes d'obtention avec des jetons d'accès, veuillez le partager.
Voici ma tentative
Request = New HTTP Request(
URL(URLDes),
Method("Get"),
Headers({"Authorization = Bearer " || AccessDetails["access_token"] })
//Query String([["Authorization" => "Bearer" ||AccessDetails["access_token"]]])
)<< Send;