我无法通过HTTP GET查询字符串重复字段查找有关行为的权威信息,例如
http://example.com/page?field=foo&field=bar
Run Code Online (Sandbox Code Playgroud)
特别是如果保留或不保留订单.大多数面向Web的语言产生一个包含与关键"字段"相关联的foo和bar的数组,但我想知道是否存在关于这一点的权威声明(例如在RFC上).RFC 3986有一个部分3.4. Query,它引用了键=值对,但没有说明如何解释顺序和重复字段等.这是有道理的,因为它依赖于后端,而不属于RFC的范围......
虽然存在事实上的标准,但我希望看到它的权威来源,只是出于好奇.
预期的查询字符串:
http://fqdn/page?categoryID=1&categoryID=2
Run Code Online (Sandbox Code Playgroud)
axios 获取请求:
fetchNumbers () {
return axios.get(globalConfig.CATS_URL, {
params: {
...(this.category ? { categoryId: this.category } : {})
}
})
.then((resp) => {
// console.log(resp)
})
.catch((err) => {
console.log(err)
})
}
Run Code Online (Sandbox Code Playgroud)
如您所见,它可以完美地使用 1 个参数的 1 个值,但是如果我想创建多个值 - 它不起作用,我尝试使用数组:
...(this.category ? { categoryId: [1, 2] } : {})
Run Code Online (Sandbox Code Playgroud)
但它以这种方式返回:
http://fqdn/page?categoryID[]=1&categoryID[]=2
Run Code Online (Sandbox Code Playgroud)
所以它只是不工作。看看这个问题:使用 axios 在 GET 中将带有多个值的参数的对象作为查询字符串传递
但是想不通,他是怎么解决这个问题的。