Development #52137
paramètre à l'API d'import CSV pour faire le traitement asynchrone
0%
Description
Aujourd'hui on a dans l'endpoint un traitement synchrone :
self.import_csv_submit(get_request().stdin, afterjob=False)
On pourrait permettre un ?async=true&... dans l'URL, pour plutôt avoir la création d'un afterjob, et retourner dans la réponse l'identifiant de celui-ci.
(+ la création d'une API permettant d'obtenir le statut d'exécution d'un afterjob donné).
Fichiers
Révisions associées
api: add jobs endpoint to get afterjobs status (#52137)
Historique
Mis à jour par Thomas Noël il y a environ 3 ans
- Fichier 0002-api-add-jobs-endpoint-to-get-afterjobs-status-52137.patch 0002-api-add-jobs-endpoint-to-get-afterjobs-status-52137.patch ajouté
- Fichier 0001-api-allow-async-mode-on-import-csv-cards-52137.patch 0001-api-allow-async-mode-on-import-csv-cards-52137.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
- 0001 : ajout de async=on sur l'API d'import CSV
- 0002 : ajout de /api/jobs/42 pour connaître l'état de l'afterjob 42 (et référence à cette URL dans le retour de import-csv pour aider un peu)
Mis à jour par Frédéric Péters il y a environ 3 ans
Je serais pour plutôt /api/jobs/42/
(/ final), pour avoir une souplesse sur d'éventuelles évolutions (en pratique avoir AfterJobsDirectory
envoyer un nouveau AfterJobDirectory
qui aurait une méthode _q_index
).
Et que dans la réponse de l'endpoint d'import CSV il y ait toute l'URL pas juste le chemin.(get_publisher().get_frontoffice_url() pour avoir la racine).
Mis à jour par Thomas Noël il y a environ 3 ans
- Fichier 0002-api-add-jobs-endpoint-to-get-afterjobs-status-52137.patch 0002-api-add-jobs-endpoint-to-get-afterjobs-status-52137.patch ajouté
- Fichier 0001-api-allow-async-mode-on-import-csv-cards-52137.patch 0001-api-allow-async-mode-on-import-csv-cards-52137.patch ajouté
Bonnes idées, voici donc (les modifications sont uniquement dans 0002, l'api /api/jobs/xxx et son usage)
Mis à jour par Frédéric Péters il y a environ 3 ans
- Statut changé de Solution proposée à Solution validée
Mis à jour par Thomas Noël il y a environ 3 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 96aac2c5e1a21aaa771ebe520bfcd324eb2a9f0c Author: Thomas NOËL <tnoel@entrouvert.com> Date: Wed Mar 17 16:22:05 2021 +0100 api: add jobs endpoint to get afterjobs status (#52137) commit 748b70a535cf39b7bbe5922d056fa4ba704e865c Author: Thomas NOËL <tnoel@entrouvert.com> Date: Wed Mar 17 15:28:09 2021 +0100 api: allow async mode on import-csv cards (#52137)
Mis à jour par Frédéric Péters il y a environ 3 ans
- Statut changé de Résolu (à déployer) à Solution déployée
api: allow async mode on import-csv cards (#52137)