REST:包含 url 的查询参数

REST: query param containing an url

如何处理包含 url 值的查询参数?

例如,如果我的端点是 /endpoint/urls/{urls} 并且查询参数值 urls 将包含 url。我应该如何告诉服务器必须转义 {urls} 的值并将其视为字符串而不是真正的 url ?

举个例子:

/endpoint/urls/http://www.google.com

首先,您问题中提供的示例不是查询参数。 这是一个路径参数

要发送 URL 作为查询参数,您必须使用 key/value 对 (key=value) 并且值必须 URL 编码:

/endpoint?url=http%3A%2F%2Fwww.google.com

要URL在Java中编码一个值(路径或查询参数),你可以使用:

String valueUrlEncoded = URLEncoder.encode(value, "UTF-8")