FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WEBDEV 2024
→
API LinkedIn: Récupérer le code dans l'adresse de la page
API LinkedIn: Récupérer le code dans l'adresse de la page
Débuté par BENOIT MIRAMBEAU, 18 nov. 2024 15:21 - 3 réponses
Connectez-vous…
BENOIT MIRAMBEAU
#1
Membre enregistré
11 messages
Posté le 18 novembre 2024 - 15:21
Bonjour,
Je dois me connecter à l'API de LinkedIn et pour cela la 1ère étape est de récupérer le code d'authentification qui permet ensuite de récupérer le token.
Je reçois bien le code d'authentification dans l'adresse de la page de retour de la façon suivante :
https://Site.com/SITE_WEB/FR/Page-Code-OAuth.awp…
Malheureusement je ne peux pas extraire ce code de l'adresse pour l'affecter à ma variable.
En effet PageParamètre(1) ne renvoie rien dans ce cas.
Auriez-vous une solution ?
Merci,
Benoît
--
Merci pour votre aide
Benoît
Signaler
0
0
brunomars
#2
Membre enregistré
1 message
Posté le 18 novembre 2024 - 16:49
I think you should use this kind of API as I have used on one of my website that you can see here:
https://srd-sassa-gov.co.za/
Signaler
0
0
stef1811
#3
Membre enregistré
507 messages
Posté le 19 novembre 2024 - 18:08
BENOIT MIRAMBEAU a écrit :
En effet PageParamètre(1) ne renvoie rien dans ce cas.
Avec ton url c'est PageParamètre(2) qu'il faudrait utiliser
Message modifié, 19 novembre 2024 - 18:09
Signaler
0
0
BENOIT MIRAMBEAU
#4
Membre enregistré
11 messages
Posté le 20 novembre 2024 - 11:18
Merci pour ta réponse,
Finalement j'ai utilisé ce code qui fonctionne très bien :
s
Paramètres
est une chaîne
s
URLEnCours
est une chaîne
n
Indice
est un entier
=
1
// Construit la liste des paramètres reçus
TANTQUE
PageParamètre
(
n
Indice
) <
>
""
s
Paramètres
+
= [
"&"
] +
PageParamètre
(
n
Indice
)
n
Indice
+
+
FIN
// Construit l'URL de la page en cours
s
URLEnCours
=
PageAdresse
(
MaPage
,
paComplète
) + [
"?"
] +
s
Paramètres
//info(sURLEnCours)
SAI_
Code_OAuth
=
s
URLEnCours
//ExtraitChaîne(sURLEnCours,1,"?P1=&code=")
//SAI_Code_OAuth1
= ExtraitChaîne(SAI_Code_OAuth,2,"P1=",DepuisDébut)
SAI_
Code_OAuth2
=
ExtraitChaîne
(
SAI_
Code_OAuth
,
2
,
"?code="
,
DepuisDébut
)
Maintenant je reçois bien le Token mais par contre j'ai un souci pour publier le texte sur LinkedIn.
Que penses-tu du code que j'utilise et aurais-tu une solution, l'erreur renvoyée est la suivante :
Erreur lors de la publication : 422 - {"message":"ERROR :: /author :: \"urn:li:person:xxxxxxx\" does not match urn:li:company:\\d+|urn:li:member:\\d+\n","status":422}
// Paramètres d'accès et URL
ACCÈS_TOKEN
est une chaîne
=
SAI_
Token
URL_API
est une chaîne
=
"https://api.linkedin.com/v2/ugcPosts"
IDClient
est une chaîne
=
"xxxxxxxxxx"
//ID de ma page linkedin perso
// Corps de la demande pour créer un partage de texte
oRequete
est un
Variant
oRequete
=
JSONVersVariant
(
"{}"
)
oRequete.author
=
"urn:li:member:"
+
IDClient
// Assurez-vous que c'est le bon format et l'ID correct
//oRequete.author
= "urn:li:person:" + IDClient
oRequete.lifecycleState
=
"PUBLISHED"
// Contenu spécifique du partage
shareContent
est un
Variant
shareContent
=
JSONVersVariant
(
"{}"
)
shareContent.shareCommentary
=
JSONVersVariant
(
"{}"
)
shareContent.shareCommentary.text
=
"Ceci est un beau village de France"
shareContent.shareMediaCategory
=
"NONE"
// Correctement défini sans conversion en JSON
// Ajouter le contenu spécifique à la requête
oRequete.specificContent
=
JSONVersVariant
(
"{}"
)
oRequete.specificContent
[
"com.linkedin.ugc.ShareContent"
]
=
shareContent
// Définir la visibilité du post
oRequete.visibility
=
JSONVersVariant
(
"{}"
)
oRequete.visibility
[
"com.linkedin.ugc.MemberNetworkVisibility"
]
=
"PUBLIC"
// Conversion de l'objet JSON en texte JSON
s
RequeteJSON
est une chaîne
=
VariantVersJSON
(
oRequete
)
// Création de la requête HTTP
maRequête
est un httpRequête
maRequête
..
URL
=
URL_API
maRequête
..
Méthode
=
httpPost
maRequête
..
ContentType
=
"application/json"
maRequête
..
Entête
[
"Authorization"
]
=
"Bearer "
+
ACCÈS_TOKEN
maRequête
..
Entête
[
"X-Restli-Protocol-Version"
]
=
"2.0.0"
maRequête
..
Contenu
=
s
RequeteJSON
maRequête
..
Timeout
=
20000
// Ajout d'un délai de timeout de 20 secondes
// Envoi de la requête et réception de la réponse
maRéponse
est un httpRéponse
=
HTTPEnvoie
(
maRequête
)
SI
maRéponse
..
StatusCode
=
201
ALORS
Info
(
"Publication réussie !"
)
SINON
Info
(
"Erreur lors de la publication : "
+
maRéponse
..
StatusCode
+
" - "
+
maRéponse
..
Contenu
)
SAI_
JOURNAL
=
maRéponse
..
StatusCode
+
maRéponse
..
Contenu
FIN
--
Merci pour votre aide
Benoît
Signaler
0
0
→ Revenir à WEBDEV 2024
WINDEV 2024
WINDEV 2024
WEBDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
WINDEV (précédentes versions)
WEBDEV (précédentes versions)
WEBDEV (précédentes versions)
WINDEV Mobile (précédentes versions)
WINDEV Mobile (précédentes versions)
Etats & Requêtes
Etats & Requêtes
Hors-sujet
Hors-sujet
Outils
Outils
WINDEV 26
WINDEV 2024
WINDEV 2024
WINDEV 25
WEBDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte