Extjs Restful+Wpi Token
目标
1.Extjs使用Restful送出,将首頁,編輯頁的view,controller,viewModel合并為隻有一個view,controller,viewModel,大幅度減少檔案與代碼,同時減少Extjs.Ajax的通路後端的代碼
2.通過JWT 的使用,用tonken将背景的通路以标準的驗證,授權規範起來,有效保護webapi的安全(登入時傳回token,存于用戶端,用戶端通路webapi時在httpheader帶上token,webapi對token進行解碼驗證)
技術點
1.Extjs中Restful的使用
a.将Extjs Store的proxy 的type設定為'rest'
b.将Extjs Storer的writer的writeAllFields設定為true
c.新增用Store.add()
d.删除用Store.remove()
e.新增,删除,修改後統一使用 store.sync()方法送出到遠端webapi
f.在Ext GridPanel中加上window,做法:在panel的items中加入gridpanel和windowpanel
g.EXT UI的form字段驗證,在Model中加入validators,綁定字段,UI會自動加入validate,前端驗證可以使用form.isValid()
h.window編輯内容與gridpanel選中内容的同步,将window對應的viewmodel綁定到gridpanel的selection,則window的内容與gridpanel的選中内容雙向同步
2.JWT tonken的使用
a.實作基本驗證服務BaseAuthentiction Filter(取httpheader進行解碼)
b.将基本驗證服務filter注冊,使所有的通路必先經過此filter
c.實作基本授權特性BaseAuthorize Attribute,在需要授權檢查的webapi加上此特性
d.實作登入webapi,若登入成功則傳回token給調用方
e.token的生成與解碼使用jwt