我早些時候詢問了question,但它可能過於模糊或過於寬泛以保證答案。自從我重新考慮了我的方法和我的問題。MVC框架,API層和身份驗證/權限
我正在考慮一個特定應用程序的框架,但顯然是保持重用性在最前沿。這個框架的關鍵元素是暴露一個API層,用於JSON驅動的遠程交互。
我在規劃這個問題的問題來自身份驗證/權限。 如果我在設計時考慮了MVC風格的體系結構,但想要允許通過API層使用,應在哪裏進行身份驗證/權限檢查?
Web訪問層本質上與API層相同,唯一的區別是輸出方法(HTML與JSON),所以我認爲這兩個公共業務邏輯層是合理的。請求將被標準化爲數據結構,併發送到業務邏輯。業務邏輯最終會踢出一個結果數據結構(查詢結果,失敗,成功等),這些數據結構要麼被送到模板引擎,要麼串行化到JSON。
在我看來,權限檢查需要在通用業務邏輯層中執行,但是有沒有更好的地方可以將它結合到MVC/API框架中?
我不知道現在還有什麼需要詳細說明的,所以請隨時索取更多詳細信息,我會在我提出這些細節時提供。
謝謝** simshaun **;這似乎是一個合適的解您建議的基於角色的權限似乎符合我的情況。我可以從Controller中移除輸出格式責任,因爲生成的數據結構對於模板插入或JSON序列化都應該格式良好。 API層的原因是應用程序和關聯的站點都可以獲取,修改或同步數據。我不願意接受,因爲我很快就會在我的問題中詳細解釋其他幾點。 – Dan 2011-02-23 23:39:42