我希望能够根据传入的请求标头向我的氚项目添加一些逻辑。是否可以访问标头信息,然后执行 match() with() 逻辑?
我的计划是采用现有的 URL(可以通过正常的 GET 请求访问)并为其提供第二种功能模式,以便可以将其转换为 AJAX API。当 JavaScript 发出 API 请求时,我可以设置自定义标头标志,以便平台知道以不同方式解释请求。
我希望能够根据传入的请求标头向我的氚项目添加一些逻辑。是否可以访问标头信息,然后执行 match() with() 逻辑?
我的计划是采用现有的 URL(可以通过正常的 GET 请求访问)并为其提供第二种功能模式,以便可以将其转换为 AJAX API。当 JavaScript 发出 API 请求时,我可以设置自定义标头标志,以便平台知道以不同方式解释请求。
您应该能够使用全局变量语法访问传入 HTTP 请求中的标头。例如,要访问站点的主机名:
$host
# => yourwebsite.com
我相信大多数标准头文件都可以作为 Tritium 中的全局变量访问。但是,我不确定是否所有标头都可以作为全局变量访问。
在您的项目文件夹中,在您的开发机器上,应该有一个tmp
包含 HTTP 请求/响应包的文件夹。每个捆绑包都应带有请求的日期和时间的时间戳。我认为,如果您查看其中一个文件夹,您应该会看到一堆文件:
可能还有第五个文件。我不记得在当前版本的平台中是否仍然是这种情况,但是您可能会找到第五个文件,其中包含 Tritium 服务器创建的用于存储 HTTP 请求标头值的全局变量。因此,您可以查看该文件(如果存在)并找出您的 HTTP 标头使用的变量名称。
希望有帮助!
我在这个方面迟到了,但我想我会向其他需要帮助的人伸出援助之手。
您需要在脚本目录中创建两个文件,一个名为
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())
}
这将记录您的所有标题名称,进行修改,然后您可以使用“setter”函数,您可以在此处阅读:
http://developer.moovweb.com/docs/local/configuration/headers
祝你好运。