You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

HTMX hx-request属性(credentials、noHeaders)正确语法咨询

正确使用HTMX的hx-request属性语法

hx-request需要接收JSON格式的配置对象,属性名需严格匹配HTMX规范,且语法要准确(注意引号、逗号的使用)。针对你关注的credentials和noHeaders选项,以下是正确写法及说明:

1. 控制请求凭据(credentials)

credentials的取值为字符串类型,可选值包括:

  • "include":携带所有凭据(如Cookie),跨域请求也生效
  • "same-origin":仅同源请求携带凭据(默认值)
  • "omit":不携带任何凭据

示例代码:

<div id="user_entry_1a_slot"
     hx-get="{% url 'user_entry_1b' %}"
     hx-trigger="keyup"
     hx-target="#user_entry_1b_slot"
     hx-include="this"
     hx-request='{"credentials": "include"}'>
    <p>Enter a three character alphanumeric identifier:
        <input type="text" size="3" maxlength="3" name="ti_threecharid"></input>
    </p>
</div>
<div id="user_entry_1b_slot">
</div>

2. 禁用HTMX默认请求头(noHeaders)

noHeaders是布尔值,设置为true会移除HTMX自动添加的请求头(如HX-Request、HX-Trigger等),但不会删除浏览器自带的头(如User-Agent、Cookie)。

示例代码:

<div id="user_entry_1a_slot"
     hx-get="{% url 'user_entry_1b' %}"
     hx-trigger="keyup"
     hx-target="#user_entry_1b_slot"
     hx-include="this"
     hx-request='{"noHeaders": true}'>
    <p>Enter a three character alphanumeric identifier:
        <input type="text" size="3" maxlength="3" name="ti_threecharid"></input>
    </p>
</div>
<div id="user_entry_1b_slot">
</div>

同时配置两个选项

若需同时设置credentials和noHeaders,注意JSON对象的逗号分隔语法:

hx-request='{"credentials": "omit", "noHeaders": true}'

常见错误排查

  • 必须用单引号包裹整个JSON配置,内部属性名和字符串值用双引号,避免与HTML属性的引号冲突
  • 检查属性名拼写:credentials(复数)、noHeaders(驼峰命名),不要写错
  • credentials不能用布尔值true/false,必须使用指定的字符串值

内容的提问来源于stack exchange,提问作者JDM

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 14:20:56