gpt4 book ai didi

java - HTTP:区别请求属性和 POST - 参数

转载 作者:可可西里 更新时间:2023-11-01 16:54:18 25 4
gpt4 key购买 nike

我目前正在尝试使用 HttpURLConnection 类通过 Android 应用程序将 POST 方法发送到简单的 PHP 网络服务。多个教程使用缓冲编写器类将参数写入 http-body,但 HttpURLConnection 也有一个 setRequestProperty() 方法,它向连接添加一个键值对。显然它们的用途不同,但有什么区别(我也查过谷歌,但没有找到答案)?

最佳答案

setRequestProperty() 用于设置 HTTP header (如 Content-Type):

conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

但是要设置 POST 参数,您需要对它们进行 url 编码并将结果字符串(转换为字节流)写入从 HttpURLConnection 实例获得的 OutputStream

例如,要发送值为 1a 和值为 2b 作为 POST 参数,您可以执行以下操作:

final String urlEncodedString = "a=1&b=2";
final byte[] bytesToWrite = urlEncodedString.getBytes(StandardCharsets.UTF_8);
conn.getOutputStream().write(bytesToWrite);

这里,connHttpURLConnection 的一个实例。

关于java - HTTP:区别请求属性和 POST - 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45803866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com