如何使javax.ws发布请求类似邮递员请求?

时间:2016-09-15 08:20:14

标签: java http postman javax.ws.rs

我尝试用邮递员发送http发帖请求,但它确实有效 (它也可以使用curl

我得到了积极回应

enter image description here

我尝试使用

在代码中执行相同的请求
import javax.ws.rs.client.WebTarget;



        Map<String, String> formData = new HashMap();
        formData.put("update_type", "config");
        formData.put("role", role);
        formData.put("name", configNameCamelCase);
        formData.put("version", version);
        formData.put("work_env", env);
        formData.put("project", "waze-prod");
        formData.put("provider", "gce");


        try {
            String a = commonClient.webTarget
                    .path("/tasks/update_version")
                    .request()
                    .header("Authorization", commonClient.authorizedRequestBuilder())
                    .accept(MediaType.APPLICATION_FORM_URLENCODED_TYPE)
                    .post(Entity.entity(formData, MediaType.APPLICATION_JSON))
                    .readEntity(String.class);
}

我应该如何更改代码以使其与邮递员请求相同

1 个答案:

答案 0 :(得分:1)

使用Form,只需添加Form#param(key, value)参数即可。然后使用.post(Entity.form(form))

Form form = new Form()
  .param("one", "two")
  .param("three", "four");

...post(Entity.form(form));