我们找不到使用jersey张贴表单变量的任何好方法,因此我们正在手工创建字符串来模仿表单主体。问题是,我们如何对参数进行urlencode?有一个方便的图书馆吗?
这是我们的工作方式:
String param1="this is some text"
String param2="something else & ! \\"
String data = "param1=" + param1 + "¶m2=" + param2
WebTarget webTarget = theHttpClient.target(uri);
Invocation.Builder invocationBuilder = webTarget.request(MediaType.APPLICATION_FORM_URLENCODED);
RESPONSE response = invocationBuilder.post(Entity.entity(data, MediaType.APPLICATION_FORM_URLENCODED), responseClass);
仅当参数1和param2的值中不包含“坏字符”(例如“&”和换行符)时,此方法才有效。我们如何编码参数以解决此问题?
我们无法使用invocationBuilder找到带有post和form vars的jersey的任何示例,但是有许多用于发送json有效负载的消息,而我们需要使用的API不支持该
我们确实在球衣docs中提到了“ Form”对象,但是没有关于如何将其与invocationBuilder一起使用的示例,也没有提及如何对它们进行url编码。