【发布时间】:2017-08-10 21:47:47
【问题描述】:
我正在学习 JAX-RS 和 Jersey。我正在尝试将数据发布到一个 URL,但是我有一个我不知道要解决的问题:
Form formData = new Form();
formData.param("merchant_id", mPayment.getMerchantId());
formData.param("transaction_id", mPayment.getTransactionId());
formData.param("code", mPayment.getCode());
formData.param("amount", String.valueOf(mPayment.getAmount()));
formData.param("desc", mPayment.getDesc());
formData.param("phone", mPayment.getPhone());
Response response = target.path("process").request()
.accept(MediaType.APPLICATION_JSON)
.post(Entity.form(formData));
现在,当它只是一个字符串时一切正常,但是服务器期望字段 amount 的浮点数据类型但是当我尝试在没有String.valueOf() 的情况下使用它时,我得到一个错误。如何添加具有不同数据类型的参数以便我可以发布?
【问题讨论】:
-
不用担心,如果需要,服务器有责任将其转换为浮点数。您可以简单地将所有内容转换为字符串并发送。因此,您的代码是正确的。
-
仅供参考 -
param只接受字符串参数 - github.com/jax-rs/api/blob/master/jaxrs-api/src/main/java/javax/… 符合预期。
标签: java jax-rs jersey-2.0 jersey-client