tapestry 對外json介面實現

2021-09-30 15:29:50 字數 903 閱讀 1302

為了實現乙個對外的json介面,仔細讀了tapestry5.2的源**,考慮了幾種實現,最簡便清晰的方法如下。

為json介面做乙個page, 例如命名為 jsonpage。在jsonpage裡只放乙個actonlink,給乙個命名例如"do"

jsonpage.tml如下:do

這樣外部訪問json介面url可以用

jsonpage.do後面的/xx/***/xx是引數,和標準page的引數一樣格式

jsonpage裡做乙個方法

jsonobject onaction(object params) {

在這個方法中,實現邏輯,生成jsonobject。注意這個page的onactivate(object params)的params是空,要用url裡名字為t:ac的引數的值來給onactivate()的params賦值。

最後需要做乙個servletfilter裡面有類似這樣的**,以使tapestry認為這是個ajax請求,否則tapestry會不能處理jsonobject onaction()。

安全的對外介面

我們知道資料在傳輸過程中是很容易被抓包的,如果直接傳輸比如通過http協議,那麼使用者傳輸的資料可以被任何人獲取 所以必須對資料加密,常見的做法對關鍵字段加密比如使用者密碼直接通過md5加密 現在主流的做法是使用https協議,在http和tcp之間新增一層加密層 ssl層 這一層負責資料的加密和解...

模組對外提供介面 技巧總結

1 乙個模組需要對外開放一些介面,使外部可以訪問本模組的東東.最簡單 最方便的對外介面是 set 1 set 2 set 3 get 1 get 2 get 3 對每乙個類似的功能實現乙個對外的介面,但是這樣導致的問題是,介面太多,比較亂.可以提供乙個通用的設定 獲取資料結構的介面.eg 1 int...

示範對外介面引數文件

模組一 1 說明 1 系統間互動引數以json格式進行傳輸 2 加簽驗籤 系統會給接入者提供秘鑰,傳送請求需要根據秘鑰進行加簽,通過後才能進行交易請求 同樣,對於返回的結果系統也會進行加簽,接收方需要用秘鑰進行原交易加簽並進行比較驗證資料的完整性。注 加簽驗籤方法呼叫提供的jar包呼叫相應的方法即可...