鍍金池/ 問答/PHP  HTML/ chrome 控制臺 preview 如何解析html代碼

chrome 控制臺 preview 如何解析html代碼

我在laravel 使用ajax的時候發(fā)現(xiàn)dump出返回request數(shù)據(jù)但是preview顯示的數(shù)據(jù)都是原始的html數(shù)據(jù),而沒有解析,所以每次使用非常不便,所以有沒有什么設置可以在preview可以直接顯示

我的
clipboard.png

如何顯示這樣的效果

clipboard.png

回答
編輯回答
撿肥皂

chrome的preview解析html還是json是根據(jù)Content-Type

2017年12月22日 05:04
編輯回答
離觴

Preview?根據(jù)你所選擇的資源類型(JSON、圖片、文本)顯示相應的預覽。在Preview(預覽功能)中,控制臺會把發(fā)送過來的json數(shù)據(jù)自動轉(zhuǎn)換成javascript的對象格式。

ajax開發(fā)中, 常遇到下面的幾種情況:
1 服務端需要返回一段普通文本給客戶端?
2 服務端需要返回一段HTML代碼給客戶端?
3 服務端需要返回一段XML代碼給客戶端?
4 服務端需要返回一段javascript代碼給客戶端?
5 服務端需要返回一段json串給客戶端

對于每一種返回類型,規(guī)范的做法是要在服務端指定 response的contentType 的.?

?? 1. 普通文本 : text/plain??
?? 2. HTML代碼 : text/html??
?? 3. XML代碼 : text/xml?
?
以上三個是毫無爭議的, 另外兩種情況 就要注意一下了.
javascript 的 contentType 按最標準的寫法 應該是 application/javascript.?

json的contentType , 標準寫法是 :application/json.?

  • 設置這些有什么用??

絕大多數(shù)情況下 確實不設置也可以.?
但是這種做法是不規(guī)范不標準的.對于復雜的ajax應用 ,不規(guī)范的行為是會帶來很大的隱患.
舉個例子.
對于同樣的內(nèi)容 可以有下面的3種形式

html形式?:

對于 html 形式,客戶端得到數(shù)據(jù)后,往往是對其做dom操作。

javascript形式?:

對于 javascript形式,往往是對其做eval操作。

json形式:
?
對于 json形式,往往是對其做? eval操作之后 賦值給某變量。

客戶端拿到不同形式的代碼 所要做的工作是不一樣的。
如果沒有設置 contentType 客戶端很難判斷 返回的數(shù)據(jù)是什么, 該怎么處理。

返回信息,如果不設置contentType,web服務器往往會給返回的內(nèi)容添加一個"默認的contentType",?
但是這個"默認"會根據(jù)服務器的不同 以及web應用配置的不同而不同.
而瀏覽器對于沒有足夠頭信息的返回值 也會做出"某些默認行為(打開 或下載 或報錯".?
總之 不同瀏覽器 不同的瀏覽器設置 結果可能是不一樣的無法把控。

正確設置返回信息的 contentType? 還是很有必要的。
======================?

2018年6月30日 11:55