HTTP请求

发布时间 2023-09-19 09:15:26作者: Eiffelzero

okHttp 发送表单请求

import okhttp3.FormBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;

import java.io.IOException;

public class HttpPostExample {
    public static void main(String[] args) throws IOException {
        OkHttpClient client = new OkHttpClient();

        // 创建请求体
        RequestBody formBody = new FormBody.Builder()
                .add("arg1", "xxx") // 表单字段1
                .add("arg2", "aaa") // 表单字段2
                .build();

        // 创建请求对象
        Request request = new Request.Builder()
                .url("https://example.com/submit")
                .post(formBody) // 使用POST请求方法
                .addHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8")
                .addHeader("Connection", "keep-alive") // 设置请求头,可选
                .build();

        try {
            // 执行请求
            Response response = client.newCall(request).execute();
            // 处理响应
            if (response.isSuccessful()) {
                String responseBody = response.body().string();
                System.out.println("Response: " + responseBody);
            } else {
                System.err.println("Request failed: " + response.code() + " " + response.message());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}