所以,我想要提供一些额外的数据请求。
例如:
/tests/46/add_key?keyword=%D0%A0%D0%BE%D1%81%D1%81%D0%B8%D0%B8&position=22
但除此之外,我想传递颜色查询,如下所示:
/tests/46/add_key?keyword=%D0%A0%D0%BE%D1%81%D1%81%D0%B8%D0%B8&position=22&color=#68d574
但这种最终请求是:
Started POST "/tests/46/add_key?keyword=%D1%81%D0%BA%D1%80%D0%BE%D0%BC%D0%BD%D0%BE&position=200&color="
我只使用[a-zA-Z]
将查询更改为字符串,例如'red'
:
Started POST "/tests/46/add_key?keyword=%D1%81%D0%BA%D1%80%D0%BE%D0%BC%D0%BD%D0%BE&position=200&color=red"
请求就是我的期望。
因此,未转到服务器(#68d574
)的查询包含符号,我无法在请求中使用{#
)。或者是什么?
你能解释一下吗
答案 0 :(得分:2)
#
字符表示fragment identifier的开头,因此终止查询字符串。由于片段id仅用于客户端,因此甚至不会发送到服务器。
与URI中具有特殊含义的任何字符一样,您可以将其作为数据包含在percent encoding中(在此特定情况下为%23
)。