我改變了我的代碼並不需要這個答案了,但我還是問出於好奇的緣故。XSS安全JsonResult作爲字符串
經過一番搜索,我發現this question和其他幾個人喜歡它。我一直在尋找一種方法來獲取JsonResult返回的JSON,並在視圖中使用它。這個問題和其他問題似乎是不安全的。一些消息來源,我發現建議是這樣的:
所有的@Html.Raw(Json.Encode(Model))
首先,Json.Encode
似乎不存在了。其次,如果我使用Raw,那麼不僅JSON語法未經編碼,模型內容也不是。如果用戶在他們的信息中輸入<script>
標籤,它會被吐出並執行。如果我不使用Raw,JSON也會被視圖作者轉義。
我想這樣做的原因是因爲我有一個使用jQuery的一些模板頁面,並在第一次加載,我想通過讓視圖輸出解僱他們的腳本標記仍然使用模板。