我正在使用PlayFramework2我找不到正確處理HTML轉義的方法。使用PlayFramework2在JSON中轉義HTML
在模板系統中,默認過濾HTML實體。
但是,當我使用Backbone.js REST請求時,我的JSON對象不被過濾。
我用play.libs.Json.toJson(myModel)
改造的對象成字符串。
因此,在我的控制器中,我使用return ok(Json.toJson(myModel));
來發送響應......但在這裏,我的模型的屬性並不安全。
我不能找到一種方法來處理它...
第二個問題:
模板默認引擎過濾器的HTML實體,這意味着我們必須存儲到我們的數據庫的原始用戶輸入。
它是一種保存行爲嗎?
三questdion:
在PlayFramework是否有manualy逃逸字符串的函數?我能找到的所有人都需要添加新的依賴關係。
謝謝!
編輯:我找到了一種在Backbone.js的模板級別: - 使用myBackboneModel.escape('attr');
代替myBackboneModel.get('attr');
Underscore.js模板系統還包括選擇:<%= attr %>
呈現不逃跑,但<%- attr %>
呈現逃跑!
只要注意效率,字符串在每次渲染時都會被重新轉義。這就是爲什麼Backbone.create()應該是首選。