Projet

Général

Profil

Development #48687

Encoder l'email dans les paramètres GET du connecteur Solis afi mss

Ajouté par Nicolas Roche il y a plus de 3 ans. Mis à jour il y a plus de 3 ans.

Statut:
Rejeté
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
19 novembre 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

cf #48674

+ est un caractère réservé, il faut encoder l'email :


Fichiers

Historique

#1

Mis à jour par Nicolas Roche il y a plus de 3 ans

  • Sujet changé de Encoder les paramètres GET du connecteur Solis afi mss à Encoder l'email dans les paramètres GET du connecteur Solis afi mss
#2

Mis à jour par Nicolas Roche il y a plus de 3 ans

#3

Mis à jour par Thomas Noël il y a plus de 3 ans

mais urlencode({'adresseMail': email}) ça génère une string, je comprends pas comment ça marche là

#4

Mis à jour par Emmanuel Cazenave il y a plus de 3 ans

Et de tout façon requests est censé assurer l'encodage automatiquement.

#5

Mis à jour par Thomas Noël il y a plus de 3 ans

Emmanuel Cazenave a écrit :

Et de tout façon requests est censé assurer l'encodage automatiquement.

Clair. Le bogue n'est pas ici. J'imagine que c'est l'appel original wcs ou combo qui n'est pas encodé, et "bmallet+2020" est reçu par Passerelle comme "bmallet 2020"

#6

Mis à jour par Nicolas Roche il y a plus de 3 ans

Thomas :
https://fr.python-requests.org/en/latest/api.html?highlight=params#requests.Request.params

params: Dictionary or byte of querystring data to attach to the Request.

Manu, sans le patch et avec cette requête au connecteur :

$ curl -v 'https://passerelle.dev.publik.love/solis-afi-mss/test/family?email=bmallet+20112020@entrouvert.com'

dans les logs de passerelle, je vois bien l'arobase d'encodé mais pas le plus :

request_url: https://msppsolis.mon-application.fr/solisAPI/afi/agent/rechercherParEmail/?adresseMail=bmallet+20112020%40entrouvert.com

J'imagine ... "bmallet+2020" est reçu par Passerelle comme "bmallet 2020"

Peut-être, mais je reproduis quand même la même erreur avec les requêtes curl (comme celle donnée ci-dessus), encodée ou non, et qui tapent directement sur le serveur Solis ou non.
(j'entends par là que le bug pourrait tout aussi bien être sur le serveur Solis)

Solis API MSS AFI - Erreur: L'adresse mail n'appartient \u00e0 aucun agent" 

#7

Mis à jour par Thomas Noël il y a plus de 3 ans

Nicolas Roche a écrit :

Thomas :
https://fr.python-requests.org/en/latest/api.html?highlight=params#requests.Request.params

params: Dictionary or byte of querystring data to attach to the Request.

Manu, sans le patch et avec cette requête au connecteur :

C'est cette requête qui est fausse, c'est là que tu dois encoder. Là tu envoies "email=" sans encoder le +, qui est reçu par Passerelle comme une espace.

#9

Mis à jour par Nicolas Roche il y a plus de 3 ans

  • Statut changé de Solution proposée à Rejeté

C'est cette requête qui est fausse,

Oui je confirme, ma requête curl fait que passerelle reçoit un espace à la place du plus.

Formats disponibles : Atom PDF