我正在尝试通过以下方式从 Java 代码调用 URL:
userId = "Ankur";
template = "HelloAnkur";
value= "ParamValue";
String urlString = "https://graph.facebook.com/" + userId + "/notifications?template=" +
template + "&href=processThis.jsp?param=" + value + "&access_token=abc123";
我有以下问题:
- 当我这样做时
println(urlString)
,我看到urlString
唯一的值在第一个 & 号 (&
) 之前和之前。也就是说,它看起来像:https://graph.facebook.com/Ankur/notifications?template=HelloAnkur
其余的(应该是&href=processThis.jsp?param=ParamValue&access_toke=abc123
)被切断了。为什么会这样,我怎样才能获得并保持全部价值urlString
?是否&
需要在 Java 字符串中转义,如果是,该怎么做? - 请注意,我正在尝试将(相对)URL 作为此查询中的参数值(
href
as的值processThis.jsp?param=ParamValue
。我如何传递这种类型的值href
而不将其与此 URL (urlString
) 的查询混合在一起,它只有三个参数template
,href
和access_token
?也就是说,我如何隐藏或逃避?
和?此外,如果是(带空格)=
我需要做什么?value
Param Value
- 请注意,
template
具有值HelloAnkur
(没有空格)。但是,如果我希望它有空间,如Hello Ankur
,我该怎么做?我应该这样写Hello%20Ankur
还是Hello Ankur
可以? - 我需要一种
URL url = new URL(urlString)
可以创建的解决方案,或者url
可以通过URI
. 请描述您到目前为止的答案,因为在 Java 中创建安全 URL 并不简单。
谢谢!