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

如何使用PhpStorm REST API客户端高效手动测试Shopware 6 API

解决Shopware 6 API令牌频繁过期的PhpStorm测试技巧

方法一:用PhpStorm HTTP Client自动刷新令牌(推荐)

PhpStorm自带的HTTP Client支持预请求脚本,能在每次测试API前自动获取新令牌并更新环境变量,完全不用手动操作:

  1. 先创建环境配置文件shopware.env.json,内容示例:
{
  "dev": {
    "baseUrl": "http://your-shopware-domain/api",
    "accessToken": "",
    "clientId": "your-client-id",
    "clientSecret": "your-client-secret"
  }
}
  1. 新建一个获取令牌的HTTP请求文件refresh-token.http:
POST {{baseUrl}}/oauth/token
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials&client_id={{clientId}}&client_secret={{clientSecret}}
  1. 在你的业务API请求文件里,添加预请求脚本,在请求头上方插入:
// 发送令牌请求并更新环境变量
client.sendRequest("refresh-token.http", (response) => {
  const token = response.body.json().access_token;
  client.global.set("accessToken", token);
});
  1. 业务API的请求头直接用变量:
GET {{baseUrl}}/product
Authorization: Bearer {{accessToken}}

这样每次运行业务请求时,都会自动先刷新令牌,完全不用手动干预。

方法二:开发环境延长令牌有效期

如果只是本地开发测试,可以直接修改Shopware的配置延长令牌过期时间:

  • 找到项目根目录的.env文件,添加或修改:
SHOPWARE_JWT_TOKEN_TTL=3600

这里设置的是3600秒(1小时),可以根据测试需求调整,生产环境不建议这么做,只适合本地开发用。

方法三:快速手动刷新令牌的快捷方式

如果不想搞自动脚本,也可以用PhpStorm的快捷操作简化手动流程:

  • 把获取令牌的请求保存为Favorite,点击侧边栏的收藏夹就能一键运行;
  • 用PhpStorm的Live Template,设置一个快捷键,直接插入令牌请求的代码片段,运行后复制返回的token到请求头里。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 07:54:55