簡體   English   中英

字符轉義:從Python字符串文字到JSON再到HTML

[英]character escaping: from Python string literal to JSON and then to HTML

我設計了一個JSON對象,用作AJAX響應的格式,發送回我的Web應用程序的客戶端。 我正在通過將html代碼放入其中來增強它。 但由於缺乏關於這一主題的精確知識和經驗,所需的角色逃脫使我感到相當不舒服。

我使用Python / Django作為我的服務器端語言/框架。 要從Python字符串文字到適當的HTML節點供瀏覽器使用,我對字符轉義的模糊知識,我想我需要兩個階段的字符轉義:

  1. 將Python字符串文字序列化為JSON並根據JSON的要求轉義字符。
  2. 在客戶端收到JSON對象后,根據HTML的要求轉義字符。 請注意,我使用jQuery。

我對上述兩個階段的觀點是否正確? 如果是這樣,我怎樣才能實現它們?

如果您更容易用一個例子來解釋。 這是一個:

s = '<a href="http://www.foo.com/bar/">"Click Here&Here"</a>'

其中s是Python字符串文字。 我想看到它成為

<a href="http://www.foo.com/bar/">"Click Here&amp;Here"</a>

在HTML中。

你需要逃避客戶端嗎? 在將其編碼為JSON之前,您可以在Python中執行此操作:

from cgi import escape
from json import dumps

ajax_response = dumps(escape('<a href="http://www.example.com/path/location'
                             '?query=string&more=this#anchor">'
                             'FooBar & Friends</a>'))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM