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

Deno中无法获取自定义请求头Aaaa和MOck-Query-Path的原因

问题原因及解决方法

核心原因

  1. HTTP头字段的标准化处理:HTTP协议规定头字段名大小写不敏感,Deno会自动将所有请求头的键转换为小写格式。你发送的Aaaa会被转为aaaa,MOck-Query-Path会被转为mock-query-path,按原大小写取值自然无法获取到内容。
  2. 直接打印Headers对象无法展示实际数据:req.headers是Headers实例,并非普通JS对象,直接console.log只能输出它的原型结构,看不到具体的键值对。

解决方法

方法1:用标准化后的字段名获取指定头

通过headers.get()方法,传入小写的字段名来获取对应值:

Deno.serve(async (req) => {
  const aaaa = req.headers.get('aaaa');
  const mockQueryPath = req.headers.get('mock-query-path');
  console.log('Aaaa:', aaaa);
  console.log('MOck-Query-Path:', mockQueryPath);
  return new Response('OK');
});

方法2:遍历所有请求头查看完整内容

如果需要查看全部请求头,可通过迭代器遍历Headers实例:

Deno.serve(async (req) => {
  console.log('所有请求头:');
  for (const [key, value] of req.headers) {
    console.log(`${key}: ${value}`);
  }
  return new Response('OK');
});

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 12:24:52