0

使用 httpie v2.3.0,我正在与一个 REST api 交互,该 api 识别%20但不+用于查询参数值中的空间编码。有没有办法改变 httpie 行为以实现以下所需的行为?

询问:

http -v :9000/query/bugsigdb/jaccard_nbor_ss 'source.type==signature' \
  source=='Signature 123' e_type==Signature_Taxonomy rev_e_type==Taxonomy_Signature

结果是:

GET /query/bugsigdb/jaccard_nbor_ss?source.type=signature&source=Signature+123&e_type=Signature_Taxonomy&rev_e_type=Taxonomy_Signature HTTP/1.1
Accept: */*
Accept-Encoding: gzip, deflate
Connection: keep-alive
Host: localhost:9000
User-Agent: HTTPie/2.3.0

期望的结果:

GET /query/bugsigdb/jaccard_nbor_ss?source.type=signature&source=Signature%20123&e_type=Signature_Taxonomy&rev_e_type=Taxonomy_Signature HTTP/1.1
Accept: */*
Accept-Encoding: gzip, deflate
Connection: keep-alive
Host: localhost:9000
User-Agent: HTTPie/2.3.0

Signature+123注意和之间的区别Signature%20123

4

1 回答 1

1

目前,当您使用语法时,无法指示 HTTPie 使用空格%20代替空格。如果您想对此进行控制,那么将参数指定为 URL 的一部分是可行的方法。您可以尝试为此打开一个新问题:https ://github.com/httpie/httpie/issues/new+param==value

于 2020-11-19T13:05:16.063 回答