查询参数是 URL 中问号后面的部分——例如 ?status=open&sort=-created&limit=20。它们并不标识不同的资源;它们会修改对路径名称的请求,因此它们通常是过滤、排序、分页、搜索词和输出选项的存放位置。
键值对之间用 & 符号分隔,每个值都进行百分比编码,例如空格编码为 %20,值内的 & 符号编码为 %26。重复的键(例如 ?tag=a&tag=b)是合法的,但没有标准含义——不同的框架会分别保留第一个、最后一个或全部键值。由于它们是 URL 的一部分,因此最终会出现在日志、浏览器历史记录和缓存中。
这些未知的查询参数并无害处。许多 API 会默默忽略拼写错误的过滤器(例如 `?stauts=open`),并返回所有内容,这看起来像是成功,但实际上是客户端的 bug。一个严格的 API 会返回 400 错误;测试应该检查你的 API 属于哪种类型。
搜索与筛选 API 会拒绝 GET /search/v1/items请求中未知的查询参数,Friends v1 角色列表也是如此。电影 API 则结合了 GET /movies/v1/movies.
所有术语 · 测试技巧 · 全部 39 个模拟 REST API
最后更新时间