Il y a quelque temps, j’ai créé un plugin Discourse qui appelle une méthode de contrôleur via ajax et renvoie ensuite le résultat. Cette requête particulière peut prendre quelques minutes, et cela fonctionnait bien.
Mais maintenant, après un long moment, j’ai essayé le plugin dans la version actuelle de Discourse et je rencontre un problème où la requête est abandonnée après 1 minute.
Le code ressemble donc à ceci :
ajax("/my-plugin/import", {
type: "POST",
data: {
categoryId: this.categoryId,
otherData: ...
}
}).then((result) => { ... });
Et le message d’erreur que je vois après 1 minute est :
Erreur du proxy Discourse Ember CLI
FetchError : la requête vers http://127.0.0.1:3000/my-plugin/import a échoué, raison : socket hang up
at ClientRequest. (file:///src/app/assets/javascripts/node_modules/node-fetch/src/index.js:108:11)
at ClientRequest.emit (node:events:526:35)
at Socket.socketOnEnd (node:_http_client:525:9)
at Socket.emit (node:events:526:35)
at endReadableNT (node:internal/streams/readable:1359:12)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
Ce que j’essaie de comprendre, c’est pourquoi ce comportement a pu changer au cours de la dernière année ? Et s’il existe une option pour modifier le réglage du délai d’attente.