hx-headershx-headers 属性允许您向将随 AJAX 请求提交的标头添加内容。
默认情况下,此属性的值是一个名称-表达式值的列表,格式为 JSON (JavaScript Object Notation)。
如果您希望 hx-headers 计算 给定的值,可以在值前添加 javascript: 或 js: 前缀。
<div hx-get="/example" hx-headers='{"myHeader": "My Value"}'>Get Some HTML, Including A Custom Header in the Request</div>
<div hx-get="/example" hx-headers='js:{myVal: calculateValue()}'>Get Some HTML, Including a Dynamic Custom Header from Javascript in the Request</div>
默认情况下,hx-headers 的值必须是有效的 JSON。
它不会动态计算。如果您使用 javascript: 前缀,请注意这会引入安全考虑,特别是处理用户输入(如查询字符串或用户生成的内容)时,这可能引入 跨站脚本攻击 (XSS) 漏洞。
虽然这远非 跨站请求伪造 的万无一失解决方案,但 hx-headers 属性可以支持后端服务提供 CSRF 防护。有关更多信息,请参阅 CSRF 防护 部分。
hx-headers 是可继承的,并且可以放置在父元素上。