回答
由於沒有EWGI兼容的Web服務器還沒有,我只能請你的意見
沒有必要EWGI兼容的Web服務器存在,因爲它是EWGI的統一訪問角色和來自不同的web服務器。這是EWGI的核心思想。另一方面,如果您的意思是「符合EWGI的Web框架」,實際上有兩個(或更多?)Web框架支持EWGI。這些是Erlang Web和BeepBeep。
,或者它應該遞歸調用中間件的其餘部分自身?
中間件應該以遞歸方式互相調用,因此中間件的作用是決定下一步該做什麼。
此外,有沒有任何建議的方式對中間件通知中間件的其餘部分,其結果是所謂的最終響應
要回答你的最後一個問題,我認爲這是因爲中間件相互調用其他遞歸最簡單的方法是,如果答案是最終的,則不會調用其他中間件,並將#ewgi_context {}記錄返回到ewgi層。
根據具體情況,中間件可以使用迭代或遞歸方法。
迭代方法的一個例子是:
http://groups.google.com/group/ewgi/browse_thread/thread/f9042018cb27baa3
其他簡單的例子是在ewgi_examples
總的來說,我比較喜歡迭代的方法,但是如果你有依賴於其他中間件遞歸方法可能更好。
此外,有沒有對中間件提出的任何方式來通知中間件,其結果是所謂的最終響應的休息嗎? (例如,文件服務中間件擊中了一個文件,因此沒有意義調用視圖中間件)。由於我的觀點是上下文記錄,其餘的中間件(或服務器)應該如何判斷它是最終響應?
沒有提出的方法。如果你使用遞歸方法,瘋狂回答你只需要返回ewgi_context。在迭代方法中,視圖或視圖調用者可以檢查是否在ewgi_context中設置了響應正文和標題,並決定相應做什麼。
一般來說,我認爲ewgi是網絡的unix管道。每個中間件都會得到一個請求和響應(類似於管道中的標準輸入和標準輸出),它會修改上下文(如果需要)並返回它。
希望這會有所幫助。
- 1. RESTful兼容設計
- 2. 向後兼容性材質設計
- 3. 設計新API但保持兼容性
- 4. IE中的設計兼容性
- 5. windowBackground材質設計兼容性
- 6. 兼容性設置
- 7. 設計與declarative_authorization兼容嗎?
- 8. 設計不兼容問題
- 9. 安卓設備兼容性
- 10. 兼容性設置繼承
- 11. Android APK設備兼容性?
- 12. Android設備兼容性
- 13. Android:設備兼容性
- 14. 爲了支持向後兼容性,明確設計了哪些Java設計?
- 15. CUDA計算能力向後兼容性
- 16. GridLayout兼容性
- 17. PLSQL_V2_COMPATIBILITY兼容性
- 18. Firefox兼容性
- 19. iPhone兼容性
- 20. NServiceBus兼容性
- 21. iOS兼容性
- 22. match_parent兼容性
- 23. UTF8兼容性
- 24. 兼容性
- 25. MSMQ兼容性
- 26. DX11兼容性
- 27. silverlight兼容性
- 28. 兼容性
- 29. strtotime兼容性
- 30. Perl兼容性
感謝您的回答。通過EWGI兼容的Web服務器我的意思是一個Web服務器,它將中間件列表作爲其輸入。看看你的例子,Erlang Web是這樣做的(請參閱e_mod_ewgi:do/1在eptic中),BeepBeep以另一種方式做它(請參閱beepbeep:run/2)。 另外看ewgi_application:運行/ 1在ewgi來源(http://github.com/skarab/ewgi/tree/master),它似乎贊成迭代(非遞歸方法)。 – Zed 2009-08-13 18:18:23