days[1] = POST表单数据 ;

首先还是在pom.xml里添加依赖

	<dependency>
        <groupId>com.squareup.okhttp3</groupId>
        <artifactId>okhttp</artifactId>
        <version>4.1.0</version>
      </dependency>

今天是突然脑残了,给大家分享一下吧。这个依赖要放在< dependencies >< /dependencies >里头,不然会报错。当时我还纳闷了老长时间才反应过来。
话不多说,直接上代码。

import okhttp3.Call;
import okhttp3.FormBody;
import okhttp3.OkHttpClient;
//这里当时也突然脑残了,这个地方有可能会自动
//导入okhttp3.OkHttpClient.Builder包
//这个真是令人非常的烦恼,这个包千万不要导错了
import okhttp3.FormBody.Builder;
import okhttp3.Request;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

public class FormPoster {
    public String postContent (String url, Map<String,String>formDate) {
        OkHttpClient okHttpClient = new OkHttpClient();
        //这个地方是post方式提交的数据
        Builder builder = new FormBody.Builder();
        //然后这里是要把相应的数据存放在表单里的
        for(String key : formDate.keySet()){
            builder.add(key,formDate.get(key));
        }
        //构建FormBody对象
        FormBody formBody = builder.build();
        // 指定提交FormBody的方式
        Request request = new Request.Builder().url(url).post(formBody).build();
        Call call = okHttpClient.newCall(request);
        String result = null;
        try {
            result = call.execute().body().string();
        } catch (IOException e){
            e.printStackTrace();
        }
        return result;
    }

    public static void main(String[] args) {
        String url = "http://tcc.taobao.com/cc/json/mobile_tel_segment.htm";
        Map<String,String>formDate = new HashMap<>();
        formDate.put("数据名","数据值");
        FormPoster formPoster = new FormPoster();
        String content = formPoster.postContent(url,formDate);
        System.out.println(content);
    }
}

今天就这么滴吧,课程稍微有点多

发布了28 篇原创文章 · 获赞 13 · 访问量 3576

猜你喜欢

转载自blog.csdn.net/weixin_46192593/article/details/105060766