我需要转义一个字符串吗?这个字符串是要在HTTP正文中传递的post参数



我使用HTTPUrlConnection请求一个REST API
用户"内容类型"标题如下:

urlConnection.setRequestProperty("Content-type",
                        "application/x-www-form-urlencoded");

我将HTTP正文设置如下:

out = urlConnection.getOutputStream();
out.write(postParameters.getBytes("UTF-8"));

当我如上所示设置HTTP头和正文时,我不知道是否需要转义post参数(它是一个String)。

我只需要"是"或"否"作为答案,但如果答案能解释为什么是或为什么不是,那就太好了。

由于您张贴的数据将被解释为application/x-www-form-urlencoded,因此它必须具有以下形式:

name1=value1&name2=value2&...

因此,"值"部分必须是URL编码的,否则将无法正确解释。

将POST与x-www-form-urlencoded一起使用只是将URL的查询字符串部分从请求中移到正文中。

最新更新