1. HTML語法:跨域
由Tag組成層級結構,標籤視爲名,而值插在當中。瀏覽器
關鍵組成符:<, >, ', ", &編碼
2. 解析模式:加密
文件開頭<!DOCTYPE>告知,url
但亦可由Content-Type傳遞,插件
關於1中的關鍵符, 可由<![CDATA[.....]]>封裝設計
3. 解析器行爲:code
對錯誤容忍度極高,空格,特殊字符,HTML過濾器設計有時不能只考慮一層兩層,圖片
以及標籤的多重性, ip
各個瀏覽器之間標準的不一致性
4. 實體編碼:
&符號開頭,;符號結尾, 可ASCII, 可Unicode,(&#開頭),
5. 超連接和內容包含:
<a href="url">
表單的action本質上也是一個 href
6. 其餘資源:
圖片(<img>);樣式表(<link rel=stylesheet href=...> or <style src=...>)
客戶端腳本(<script> 包括個別奇葩腳本)
插件(<embed>, <object>...)
7. 跨域請求
瀏覽器是透明包含全局身份信息的, 從而當狀態改變的請求發送的服務端時, 是沒法確認是客戶仍是第三方發出的。
試解決方案:在請求中包含一個繪畫相關的加密參數,從而第三方沒法獲取。(同源策略對跨域文檔的讀取限制)