Bug #14967
archimed: ameliorer le webservice de
100%
Description
- Avoir des messages d'erreurs explicites :
- si l'utilisateur n'existe pas, renvoyer un message explicite
- si l'utilisateur n'est pas associé, renvoyer un message explicite
- On n'a normalement plus besoin de faire appel à PhantomJS pour avoir une session valide afin d'attaquer le ws archimed.
Attaquer/DEFAULT/Ermes/Recherche/logon.svc/logon
avec une session request et le username/password suffit.
Fichiers
Révisions associées
return explicite errors (#14967)
archimed: return Response in Publik Api Response format(#14967)
Historique
Mis à jour par Josué Kouka il y a environ 7 ans
- Fichier 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch ajouté
- Statut changé de Nouveau à En cours
- Patch proposed changé de Non à Oui
Mis à jour par Josué Kouka il y a environ 7 ans
Mis à jour par Josué Kouka il y a environ 7 ans
Mis à jour par Josué Kouka il y a environ 7 ans
Mis à jour par Serghei Mihai il y a environ 7 ans
Sur 0002: tu ne veux pas retourner un JSON car c'est attendu par la cellule Combo derrière ?
Mis à jour par Josué Kouka il y a environ 7 ans
- Fichier 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch ajouté
- Fichier 0002-return-explicite-errors-14967.patch 0002-return-explicite-errors-14967.patch ajouté
Serghei Mihai a écrit :
Sur 0002: tu ne veux pas retourner un JSON car c'est attendu par la cellule Combo derrière ?
Done.
- J'ai ajouté une key
success
(True, False) - J'ai ajouté le fichier de tests que j'avais oublié de joindre au patch
Mis à jour par Serghei Mihai il y a environ 7 ans
Je me dis que vu c'est une API à nous il faut uniformiser le format des réponses: {"data": ..., "err": ..., "err_class": ... }
Mis à jour par Frédéric Péters il y a environ 7 ans
Note générale : si tout ça modifie l'API, il ne faut bien sûr pas oublier de modifier le template blurp associé.
response = session.post(login_url, data=login_info, verify=False)
, ainsi qu'un autre plus loin; je viens de vérifier et https://mediatheques-test-entrouvert.montpellier3m.fr/ et https://mediatheques.montpellier3m.fr/ répondent sans problème de certificat; évitons le verify=False.
Mis à jour par Josué Kouka il y a environ 7 ans
- Fichier 0003-archimed-return-Response-in-Publik-Api-Response-form.patch 0003-archimed-return-Response-in-Publik-Api-Response-form.patch ajouté
- Fichier 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch ajouté
- Fichier 0002-return-explicite-errors-14967.patch 0002-return-explicite-errors-14967.patch ajouté
J'ai fait en 3 patches. Le 3eme renvoie la réponse au format Publik
.
Mis à jour par Serghei Mihai il y a environ 7 ans
En appliquant le 0001 j'ai:
git apply 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch:659: trailing whitespace. "d": "Anonymous", 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch:663: trailing whitespace. "__type": "ObjectCollection:#Archimed.Serialization", 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch:664: trailing whitespace. "badPasswordCount": 0, 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch:665: trailing whitespace. "checkAdditionalsResult": true, 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch:667: trailing whitespace. }, warning: squelched 7 whitespace errors warning: 12 lines add whitespace errors.
Mis à jour par Frédéric Péters il y a environ 7 ans
Certes, mais ça vient des fichiers de test .json, pas du code.
Ça n'empêche pas que, de manière générale, c'est utile/nécessaire d'avoir [color] diff = auto dans son ~/.gitconfig, pour repérer les espaces pourris à l'avance.
Mis à jour par Serghei Mihai il y a environ 7 ans
Ok pour 0001 et 0002, mais pour 0003 en suivant les tests je dirais qu'il faut chercher les attributs dans response.json()
et non response.data
.
Mis à jour par Josué Kouka il y a environ 7 ans
- Fichier 0003-archimed-return-Response-in-Publik-Api-Response-form.patch 0003-archimed-return-Response-in-Publik-Api-Response-form.patch ajouté
- Fichier 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch ajouté
- Fichier 0002-return-explicite-errors-14967.patch 0002-return-explicite-errors-14967.patch ajouté
Mis à jour par Serghei Mihai il y a environ 7 ans
Dans les tests du 0002 je mettrais aussi des json.loads(response.content) pour plus de clarté.
Mis à jour par Josué Kouka il y a environ 7 ans
- Fichier 0003-archimed-return-Response-in-Publik-Api-Response-form.patch 0003-archimed-return-Response-in-Publik-Api-Response-form.patch ajouté
- Fichier 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch ajouté
- Fichier 0002-return-explicite-errors-14967.patch 0002-return-explicite-errors-14967.patch ajouté
Frédéric Péters a écrit :
Vraiment, verify=False, faut pas.
Désolé, je l'avais viré dans le 003. La modif est effective dans le 001 now.
Mis à jour par Josué Kouka il y a environ 7 ans
- Fichier 0003-archimed-return-Response-in-Publik-Api-Response-form.patch 0003-archimed-return-Response-in-Publik-Api-Response-form.patch ajouté
- Fichier 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch 0001-don-t-use-PhantomJS-when-using-archimed-ws-14967.patch ajouté
- Fichier 0002-return-explicite-errors-14967.patch 0002-return-explicite-errors-14967.patch ajouté
Serghei Mihai a écrit :
Dans les tests du 0002 je mettrais aussi des json.loads(response.content) pour plus de clarté.
Done
Mis à jour par Josué Kouka il y a environ 7 ans
- Statut changé de En cours à Résolu (à déployer)
- % réalisé changé de 0 à 100
Mis à jour par Frédéric Péters il y a plus de 5 ans
- Statut changé de Résolu (à déployer) à Fermé
don't use PhantomJS when using archimed ws (#14967)