Jersey-client,如何打印POST请求

时间:2015-03-06 07:49:53

标签: java post multipart jersey-client

我有这个Jersey-client POST请求:

MultiPart multiPart = new MultiPart();
multiPart.bodyPart(new BodyPart(inParams.toString(), MediaType.TEXT_PLAIN_TYPE));
final File fileToUpload = new File(filePath);
multiPart.bodyPart(new BodyPart(fileToUpload, MediaType.MULTIPART_FORM_DATA_TYPE));

final ClientResponse clientResp = resource.type("multipart/form-data").post(ClientResponse.class, multiPart);

我是否可以打印实际请求,我希望得到类似的内容:

    ----WebKitFormBoundaryE19zNvXGzXaLvS5C
    Content-Disposition: form-data; name="Content"

    {"SP_PROT_SENDER":"","SP_PROT_IN":"0","FILENAME":"testRest.rar"}
    ----WebKitFormBoundaryE19zNvXGzXaLvS5C
    Content-Disposition: form-data; name="a"; filename="testRest.rar"
    Content-Type: 
    (...)

    ----WebKitFormBoundaryE19zNvXGzXaLvS5C

1 个答案:

答案 0 :(得分:1)

你可能已经解决了这个问题,但是前几天我遇到了这个问题,发现最简单的方法就是用Netcat嗅探发布的流量。

以下是:

  1. 使您发布的网址使用其他任何内容未使用的模糊端口号,例如15734
  2. 在另一个终端窗口中,键入nc -kl 15734
  3. 触发请求。请求将打印在上面的终端窗口中。
  4. 像GZip压缩和分块这样的东西可能会使输出看起来很奇怪,所以你可能想要关闭这些功能。