项目

请求检查器

开发服务器最近的请求及其请求头和正文:筛选、原样或编辑后重放,以及复制为 cURL。

检查器标签页(Q)保存项目每个域名最近的请求,包括请求头和正文。你可以在这里找到失败的 API 调用,原样或编辑后重放,并复制为 cURL。与分析一样,它看到的是经过代理的流量:发往 .test 域名的请求,不论服务器使用什么语言(Laravel、Symfony、Node、Bun、Next.js…)。

检查器标签页:请求列表,以及一个被拒绝的 POST 的详情,含请求头和 JSON 正文

记录哪些内容

  • 页面和 API 调用。 脚本、样式、图片和字体,以及开发服务器的内部流量(热重载、WebSocket、server-sent events)不会记录,与分析相同。
  • 每个请求记录:方法、带查询参数的路径、状态码、耗时和首字节时间、请求头和响应头,以及两个正文。
  • 每个域名保留最近 200 个请求,每个域名的正文最多 8 MB:最早的先被移除。
  • 每个正文最多保留 64 KB。超出部分会被截断,检查器会提示并显示实际大小。
  • 压缩的正文(gzip、deflate、brotli)会解压后显示。二进制正文(图片、PDF…)不显示,只显示其类型和大小。
  • 当开发服务器没有响应时,请求以状态码 502 显示,并附上原因,例如「连接被拒绝:开发服务器未运行」。

列表

请求实时到达,最新的在最上面。列表上方:

  • 域名(项目有多个域名时)、方法和状态:2xx、3xx、4xx、5xx,或开发服务器未响应时的无响应。
  • 路径… 按路径的一部分筛选,包括查询参数。
  • 在请求头和正文中搜索… 在路径、请求头和正文中查找文本。密钥值(见下文)不参与搜索。
  • 重放 只显示重放的请求。
  • 暂停 停止记录新请求(对所有项目生效);继续 重新开始记录。暂停期间重放的请求仍会被记录。
  • 清空 清空项目(或所选域名)的检查器。

请求详情

点击一个请求:右侧显示其状态码、耗时、首字节时间、发送和接收的大小、时间和域名。然后是请求和响应各自的请求头和正文。JSON 正文会被格式化;原始 按收到时的样子显示。

隐藏的密钥

Authorization、Proxy-Authorization、Cookie 和 Set-Cookie 请求头的值显示为 ••••••。显示 可查看它们,隐藏 再次隐藏。它们在内存中按原样保存,以便重放时使用。

重放请求

重放 原样重新发送请求:相同的方法、路径、请求头(含密钥)和正文。它经代理发往开发服务器,就像浏览器发送的一样(带有相同的 X-Forwarded-* 请求头),并带着 重放 标记出现在列表顶部。其详情会指向原始请求(「重放自 #12」),点击即可返回。重放也会计入分析。代理必须处于运行状态。

编辑并重放 会先在表单中打开请求,再发送:

  • 方法 和 路径(以 / 开头,包括查询参数);
  • 请求头,每行一个,格式为 名称: 值。保留为 •••••• 的密钥会沿用原值;重新输入可发送另一个值,删除该行则不发送。Content-Length 会重新计算;
  • 正文:JSON 正文会以格式化后的形式提供。二进制正文按原样发送。

域名不会改变:请求始终发往其域名的开发服务器。

复制为 cURL

复制为 cURL 会把一条 curl 命令放入剪贴板,目标为 https://<域名><路径>(代理不在 443 端口监听时带上端口),包含请求头和正文。Accept-Encoding 会被替换为 --compressed,以便在终端中读取响应。

curl -X POST 'https://app.acme.test/api/seances' \
  -H 'accept: application/json' \
  -H 'authorization: ••••••' \
  -H 'content-type: application/json' \
  --compressed \
  --data-raw '{"patientId":1842,"duree":45}'

除非复制前已经显示,命令中的密钥仍保持隐藏。被截断或二进制的正文会被省略,并在命令上方加一行注释说明。

getjoppa.com › support

加载中

发送不了?请写信至 [email protected]。只是简单的问题:[email protected]。