webstorm http client 要求严格:文件必须为 .http 或 .rest 后缀且位于项目目录内;首行须为顶格合法请求行,后跟空行;content-type 和 json body 格式须精准;变量定义位置决定作用域,oauth2 需外部 json 配置。

文件后缀和位置必须严格匹配
WebStorm 的 HTTP Client 不是“打开文件就能跑”,它靠文件后缀和路径做硬识别。不满足条件,连语法高亮都不会有,更别说绿色运行按钮。
- 后缀只能是
.http或.rest—— 新建时右键 → New → HTTP Request,别用普通文本文件改后缀,IDE 可能没注册类型 - 文件必须放在 WebStorm 打开的项目目录内(含子目录),不能丢在桌面或临时文件夹
- 首行必须是顶格写的合法请求行:
GET https://httpbin.org/get✅,get https://...❌(小写方法)、GET https://... #comment❌(后面带内容)
请求格式错一个空格就 400
HTTP Client 解析极严格,不报错、不提示,只静默失败或返回 400。问题几乎全出在格式上,跟后端无关。
- 请求行后面必须紧接一个**空行**(不能缩进、不能多空行)
-
Content-Type: application/json必须单独成行,前后无空格,大小写敏感 - JSON body 必须顶格、UTF-8 无 BOM、所有字符串用双引号:
{"id":123}✅,{id:123}❌ - 中文或特殊字符 URL 必须手动 URL 编码:
GET https://api.com/%E7%94%A8%E6%88%B7✅,GET https://api.com/用户❌
变量定义位置决定能不能用
Cannot resolve variable 不是拼写错了,大概率是变量写错了地方。作用域不是全局自动生效的。
- 全局变量必须放在文件最顶部,且前面不能有空行、注释或非法字符:
@base_url = https://api.dev.example.com - 局部变量要放在独立的
###块里:### @env dev\n@token = abc123,只对该块及之后的请求生效 - 变量名只允许字母、数字、下划线:
@auth_token✅,@auth-token❌,@auth.token❌ - 引用时必须严格匹配:
{{base_url}},不是{{base_url}}套两层、也不是{{base.url}}
OAuth2 配置不是填完 client_id 就完事
HTTP Client 的 OAuth2 支持依赖外部 JSON 配置文件,.http 文件里只负责调用,不负责定义。
- 必须在项目根目录放
http-client.env.json,内容结构扁平:{"dev": {"Security": {"Auth": {"my-api": {"Type": "OAuth2", "Grant Type": "Authorization Code", "Client ID": "xxx"}}}}} - 请求中用
Authorization: Bearer {{$auth.token("my-api")}}—— 少一对$或括号,就报Unresolved variable - 首次运行会弹非模态浏览器窗口,可切回 IDE 操作,但别关掉它,否则 token 获取中断,后续全 401
真正卡住人的从来不是功能有没有,而是它对格式的零容忍——空行、空格、引号、编码、变量位置,错一点就失效,还不告诉你哪错了。动手前先盯紧这四点,比查文档快得多。
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!











