|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
Récupération data d'une API |
Débuté par cyril, 28 oct. 2018 19:42 - 8 réponses |
| |
| | | |
|
| |
Membre enregistré 55 messages Popularité : +3 (3 votes) |
|
Posté le 28 octobre 2018 - 19:42 |
Bonsoir J'utilise l'API INSEE pour récupérer des informations liées aux n° SIRENE, TVA Intra… J'arrive à récupérer les données sans soucis, par contre impossible de générer un nouveau TOKEN (requis toutes les semaines).
EN CURL j'y arrive mais lors de mes essais de re transcription en WINDEV cela ne fonctionne pas. Vous trouverez mode code CURL et mon code WINDEV dixit mon interprétation. Si vous avez une idée Mille Merci Cdlt Cyril
Voici mon code en CURL qui fonctionne curl -k -d "grant_type=client_credentials" \ -H "Authorization: Basic UnU4WTZST1pfbXc5aFJzYmgxYzVOZThUVHM0YTpSRWx5OXN3S2psbGlnT3ZhaVd4U0djZ3dqQThh" \ https://api.insee.fr/token
Et voici mon code en WINDEV
sChCrypté est une chaîne=Encode(sMyKey+":"+sMyPwd,encodeBASE64URL) oINSEERequest..URL = "https://api.insee.fr/token" oINSEERequest..Entête["'grant_type:"] = "client_credentials" oINSEERequest..Entête["Authorization:"] = "Basic "+sChCrypté oINSEERequest..Méthode = httpGet
oINSEERequest..ContentType= "application/json" oINSEERequest..Contenu = ""
HTTPCréeFormulaire("FormData")
HTTPAjouteParamètre("FormData", "", "")
oINSEEAnswer = HTTPEnvoieFormulaire("FormData", oINSEERequest) |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 950 messages Popularité : +53 (63 votes) |
|
Posté le 29 octobre 2018 - 09:41 |
Bonjour,
sChCrypté est une chaîne=Encode(sMyKey+":"+sMyPwd,encodeBASE64URL) oINSEERequest..URL = "https://api.insee.fr/token" oINSEERequest..Entête["Authorization"] = "Basic "+sChCrypté oINSEERequest..Méthode = httpGet oINSEERequest..Contenu = "grant_type=client_credentials" oINSEEAnswer = HTTPEnvoie(oINSEERequest)
Jordan |
| |
| |
| | | |
|
| | |
| |
Posté le 29 octobre 2018 - 11:13 |
Bonjour Jordan Merci de ce retour. J'ai apporté les modifs et j'obtiens toujours la même erreur HTTP suivant :
HTTP/1.1 405 Method Not Allowed X-Forwarded-For: 80.215.70.134 Date: Mon, 29 Oct 2018 10:09:26 GMT Transfer-Encoding: chunked Connection: close Set-Cookie: INSEE=1830169354.22560.0000;secure; expires=Mon, 29-Oct-2018 10:29:26 GMT; path=/ Strict-Transport-Security: max-age=100000; includeSubDomains
Si vous désirez tester avec les clé, envyer moi un message en PV cyrilATjsn-software.com Encore merci (j'ai ajouté mon code MAJ suite à votre réponse) Cdlt Cyril
sChCrypté est une chaîne=Encode(sMyKey+":"+sMyPwd,encodeBASE64URL) oINSEERequest..URL = "https://api.insee.fr/token" oINSEERequest..Entête["Authorization"] = "Basic "+sChCrypté oINSEERequest..Méthode = httpGet oINSEERequest..Contenu = "grant_type=client_credentials" oINSEEAnswer = HTTPEnvoie(oINSEERequest)
oINSEERequest..ContentType= "application/json"
HTTPCréeFormulaire("FormData")
HTTPAjouteParamètre("FormData", "", "")
oINSEEAnswer = HTTPEnvoieFormulaire("FormData", oINSEERequest) |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 55 messages Popularité : +3 (3 votes) |
|
Posté le 29 octobre 2018 - 11:24 |
Bonjour Jordan Merci de ce retour. J'ai intégré vos modifications (voir ci-après), mais j'obtiens toujours la même erreur HTTP qui est :
HTTP/1.1 405 Method Not Allowed X-Forwarded-For: 80.215.70.134 Date: Mon, 29 Oct 2018 10:23:26 GMT Transfer-Encoding: chunked Connection: close Set-Cookie: INSEE=1846946570.22560.0000;secure; expires=Mon, 29-Oct-2018 10:43:26 GMT; path=/ Strict-Transport-Security: max-age=100000; includeSubDomains
Si vous voulez tester, contactez moi en PV (cyrilATjsn-software.com) je vous donnerai les clés. Merci Cdlt Cyril
sChCrypté est une chaîne=Encode(sMyKey+":"+sMyPwd,encodeBASE64URL) oINSEERequest..URL = "https://api.insee.fr/token" oINSEERequest..Entête["Authorization"] = "Basic "+sChCrypté oINSEERequest..Méthode = httpGet oINSEERequest..Contenu = "grant_type=client_credentials" oINSEEAnswer = HTTPEnvoie(oINSEERequest)
oINSEERequest..ContentType= "application/json"
HTTPCréeFormulaire("FormData")
HTTPAjouteParamètre("FormData", "", "")
oINSEEAnswer = HTTPEnvoieFormulaire("FormData", oINSEERequest) |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 55 messages Popularité : +3 (3 votes) |
|
Posté le 29 octobre 2018 - 12:37 |
Re bonjour Jordan j'ai trouvé ou était l'oubli. Il fallait indiqué le ContentType et c'était du POST et pas du GET...
Voici le code pour ceux que cela intéresse. Les API INSEE sont très pratique pour valider des n° SIRENE, TVA INTRA. Elles sont gratuites et limités à 30 query par minute Bonne journée Cdlt Cyril
sChCrypté est une chaîne=Encode(sMyKey+":"+sMyPwd,encodeBASE64URL) oINSEERequest..URL = "https://api.insee.fr/token" oINSEERequest..Entête["Authorization"] = "Basic "+sChCrypté oINSEERequest..Méthode = httpPost oINSEERequest..Contenu = "grant_type=client_credentials" oINSEERequest..AgentUtilisateur="Mozilla/5.0 (Windows NT 6.1; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0" oINSEERequest..ContentType="application/x-www-form-urlencoded" oINSEEAnswer = HTTPEnvoie(oINSEERequest |
| |
| |
| | | |
|
| | |
| |
Posté le 16 novembre 2018 - 12:57 |
Bonjour à tous,
Avec le code de Cyril j'obtiens une erreur : {"error_description":"Error in getting oauth app state.","error":"server_error"}
HTTP/1.1 404 Not Found<RC>X-Frame-Options: DENY<RC>X-Content-Type-Options: nosniff<RC>Set-Cookie: INSEE=1863723786.58148.0000;secure; expires=Fri, 16-Nov-2018 12:13:04 GMT; path=/<RC>X-XSS-Protection: 1; mode=block<RC>Content-Type: application/json<RC>Date: Fri, 16 Nov 2018 11:53:04 GMT<RC>Transfer-Encoding: chunked<RC>Connection: close<RC>Set-Cookie: INSEE=1830169354.22560.0000;secure; expires=Fri, 16-Nov-2018 12:13:04 GMT; path=/<RC>Strict-Transport-Security: max-age=100000; includeSubDomains<RC><RC>
Je vois pas trop où est le problème … si vous avez une piste … je suis preneur !
D'avance merci ... |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 44 messages |
|
Posté le 16 novembre 2018 - 14:56 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 44 messages |
|
Posté le 26 novembre 2018 - 15:26 |
Bonjour à Tous,
Je reviens sur les API Sirene, sur le poste de développement ça fonctionne à merveille. Par contre sur les postes client Rien, je m'explique,
Lors de la récupération du Token par Reponse = HTTPEnvoie( Requete )
AVEC Requete ..URL = protocole + serveur + "/token" ..Entête[ "Authorization" ] = "Basic "+ Encode( cle + ":" + secret, encodeBASE64URL ) ..Méthode = httpPost ..Contenu = "grant_type=client_credentials" ..ContentType = "application/x-www-form-urlencoded" FIN // AVEC requete
ou Requete contient les bonnes informations, dans reponse j’obtiens une chaine totalement vide, aucun message d'erreur absolument rien ,alors que le même code fonctionne parfaitement sur le poste de développement.
Quelqu'un aurait-il connaissance de ce problème.
Merci pour vos retours.
Marc |
| |
| |
| | | |
|
| | |
| |
Posté le 12 juin 2019 - 15:43 |
Bonjour Cyril, J'ai vu que vous avez cité que vous avez réussi à extraire les données de l'API INSEE Est ce que vous pouvez m'aider à ce propos en me montrant le code que vous avez utilisé et je vous remercie vraiment . |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|