【发布时间】:2019-01-01 21:13:39
【问题描述】:
我有一个要求,我们进行 api 调用,它在其余 api uri 中包含“/”。例如,www.abc.com/books/bookid/1232kkjf/asdis/waew。粗体字符串是图书 ID,它包含“/”。当我们使用它时,我们会收到错误。
如果可以使用“/”,请帮我提供一些细节。感谢您的帮助!
【问题讨论】:
我有一个要求,我们进行 api 调用,它在其余 api uri 中包含“/”。例如,www.abc.com/books/bookid/1232kkjf/asdis/waew。粗体字符串是图书 ID,它包含“/”。当我们使用它时,我们会收到错误。
如果可以使用“/”,请帮我提供一些细节。感谢您的帮助!
【问题讨论】:
您需要在字符串中将其替换为 '%2F'。 看到类似的问题: How do I pass the # symbol as part of a GET querystring in the URL?
【讨论】:
只要您有包含特殊字符(如“/”)的路径参数,就必须执行 URL 编码。创建 HTTP 请求时,您必须使用
对“1232kkjf/asdis/waew”进行编码如果您使用的是 Java 客户端,请使用 URLEncoder
String myEncodedPathParam = URLEncoder.encode(rawParm, "UTF-8");
如果您正在使用 PostMan 等任何其他客户端,那么您可以使用许多在线工具将字符串转换为 URLEncoded UTF-8 ex。 https://www.url-encode-decode.com/
这样 / 将被 %2F 替换
【讨论】: