J'essaie de comprendre comment on devrait concevoir des middlewares pour la compatibilité EWGI. Étant donné qu'il n'y a pas encore de serveur web conforme à EWGI, je ne peux que vous demander votre avis.Conception pour la compatibilité EWGI
Si je comprends la spécification. correctement, un middleware reçoit un enregistrement #ewgi_context {} en entrée et renvoie un autre enregistrement du même type. Est-ce que le middleware va être appelé deux fois comme django, ou est-il supposé appeler le reste des middlewares de façon récursive?
De même, existe-t-il un moyen proposé à un intergiciel d'informer le reste des middlewares que son résultat est supposé être la réponse finale? (par exemple, le middleware de traitement de fichiers frappe un fichier, donc il n'est pas utile d'appeler le middleware de vue). Comme le résultat de mon point de vue est un enregistrement contextuel, comment le reste des middlewares (ou le serveur) devrait-il comprendre que c'est la réponse finale?
Merci pour votre réponse. Par serveur web EWGI, je voulais dire un serveur web qui prend une liste de middlewares comme entrée. En regardant vos exemples, Erlang Web le fait d'une façon (voir e_mod_ewgi: do/1 en eptic), BeepBeep le fait dans l'autre sens (voir beepbeep: run/2). En regardant également ewgi_application: run/1 dans les sources ewgi (http://github.com/skarab/ewgi/tree/master), il semble être en faveur de la méthode itérative (non récursive). – Zed