java - 使用 OkHttp 3 发送原始 POST 请求

标签 java http okhttp

要使用 OkHttp 发送 POST 请求,我看到他们使用 FormBody.Builder,但这需要我手动输入 POST 数据的每个名称和值。有没有办法用带有 POST 数据的单个字符串创建 RequestBody?例如,而不是

FormBody.Builder bodyBuilder = new FormBody.Builder();

bodyBuilder.add("name", "value");
bodyBuilder.add("name2", "value2");

...只是做

bodyBuilder.add("name=value&name2=value2");

最佳答案

你可以这样做:

RequestBody body = RequestBody.create(MediaType.get("application/x-www-form-urlencoded"), "key1=value1&key2=value2");

Request request = new Request.Builder()
.url(url)
.post(body)
.build();

关于java - 使用 OkHttp 3 发送原始 POST 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51480975/

相关文章:

java - xtext:如何在 JVM 推断器中使用未知类型的泛型?

java - 如何在 jruby 中传递类类型参数

java - 使用 Java 通过 HTTP 传输数据

javascript - 在 Hapi.js 中,我可以重定向到不同的端点并设置状态码吗?

android - 使用 okHttp 信任所有证书

java - 泛型中的通配符不起作用

java - 使用 HttpUrlConnection 时如何从 CookieManager 设置 cookie?

http - 使用 httrack 镜像单个页面

java - Okhttp3 在 Android Studio 中看不到 WebSocket 接口(interface)

android - 使用 OkHttp 库 Android 发出 SOAP 请求