2013-07-10 59 views
5

我希望能夠根據傳入的請求標題添加一些邏輯到我的tritium項目中。是否可以訪問標題信息,然後用()邏輯執行match()?如何訪問氚中傳入請求的標頭?

我的計劃是採取一個現有的URL(可以通過一個普通的GET請求來訪問),並賦予它第二種功能模式,以便它可以變成一個AJAX API。當JavaScript發出API請求時,我可以設置自定義標題標誌,以便平臺知道以不同方式解釋請求。

回答

2

您應該能夠使用全局變量語法訪問傳入HTTP請求中的標頭。例如,訪問該網站的主機名:

$host 
# => yourwebsite.com 

我相信大多數的標準頭的是如氚全局變量訪問。但是,我不確定是否所有標題都可以作爲全局變量訪問。

內,您的項目文件夾,你的開發機器上,應該有一個包含HTTP請求/響應包一個tmp文件夾。每個捆綁應該用請求的日期和時間加蓋時間。我認爲,如果你偷看裏面其中一個文件夾,你應該看到一堆文件:

  • incoming_request
  • incoming_response
  • outgoing_request
  • outgoing_response

和可能的第五個文件。我不記得這仍然是在平臺的當前版本的情況下,但有一個機會,你會發現包含全局變量的氚服務器創建的用於存儲HTTP請求頭值的第五個文件。所以你可以偷看那個文件(如果它存在的話)並找出你的HTTP頭文件使用什麼變量名稱。

希望有幫助!

+0

我認爲有兩個,初始env.json和最終env.json。您可以在initial-env.json中的氚執行開始處找到爲您設置的所有全局變量,包括請求標頭。 – noj

1

我就這一個晚了,但我想我會伸出援助之手,以誰比誰需要在這一個幫助。

你需要在你的腳本目錄中創建兩個文件,一個叫

request_main.ts

response_main.ts

然後可以使用的東西,如parse_headers功能,它遍歷請求/響應頭,這取決於你把代碼的文件。

parse_headers() { # iterate over all the incoming/outgoing headers 
    log(name())  # log the name of the current cookie in the iteration 
    log(value())  # log the value of the current cookie in the iteration 
} 

parse_headers(/Set-Cookie/) { # iterate over the Set-Cookie headers only. 
    log(this()) 
} 

這將記錄你所有的頭名,進行修改,那麼你可以使用「二傳手」的功能,你可以讀到這裏:

http://developer.moovweb.com/docs/local/configuration/headers

好運。

相關問題