0

當我檢查在Mac(網絡選項卡)在Chrome的DevTools Web請求,我已經得到了有效載荷以下格式:如何將Chrome的請求有效載荷轉換爲JSON?

7|0|6|https://www.example.com/app/Basic/|00D1D071AC218DFE91521C012683E911|com.optionfair.client.common.services.nongenerated.RefreshService|getCometUpdates|I|J|1|2|3|4|3|5|6|6|173|VvAwAqy|o$UN|

這基本上是用豎線字符分隔(|)。

如何將以上有效載荷從Chrome複製或轉換爲JSON等有意義的格式?有任何想法嗎?

Chrome's DevTools, Network tab, Request Payload, Headers

順便說一句。在this question它看起來很好的截圖,但在我的情況下,我沒有視圖解析,它看起來不像JSON格式。


在Mac上使用Google Chrome(版本57.0.2987.133,64位)。


重現步驟:

  1. 到這個page
  2. 在Network/XHR選項卡上打開DevTools並查找刷新請求。

我的目標是重用/在命令行工具複製POST數據請求負載curl,因此它可以被識別(上面提到的頁面上沒有必要的,但我想知道處理這種blob格式的一般方法)。我期望JSON格式,但事實並非如此。

+1

除非你知道部件代表什麼,否則你不能。 – wOxxOm

+0

你必須知道你想用JSON傳遞的參數的關鍵。然後,您可以將數據作爲JSON與密鑰:值對傳遞 –

+0

服務器如何知道密鑰? – kenorb

回答

0

在這裏,你需要看看請求頭content-type,以確定該請求是如何知道什麼會分析它之前編碼:

request headers

這是GWT RPC,因此它可以包括序列化內置和自定義Java對象,其中類的知識在服務器端Java和通過Google Web Toolkit在客戶端上運行的傳輸Java中。

Chrome沒有理由直接理解這種格式,它不需要JSON或XML cannonicalization。如果在客戶端可能的範圍內完全解釋這些調用,則可能需要對轉發的客戶端代碼進行反彙編或反思,假設該程序沒有與源地圖進行轉譯。

如果不深入客戶端代碼,可以通過修改調用來猜測或探測類及其方法的定義,從而解釋the literal rpc

相關問題