使用离子库将双精度值作为主体参数发送到 url?
Send double value as body parameter to url using ion library?
我正在尝试通过 Ion Library 调用发送双精度值。我似乎无法发送双精度值,这弄乱了我的代码。我正在尝试通过 api 调用将 INR 转换为美元,反之亦然。我的双精度值是 'amount'.
Ion.with(context)
.load("POST",url)
.setBodyParameter("amount",amount)
.asString()
.setCallback(new FutureCallback<String>() {
@RequiresApi(api = Build.VERSION_CODES.N)
@Override
public void onCompleted(Exception e, String result) {
try {
JSONObject o = new JSONObject(result);
if (o.getString("code").equals("200")) {
PriceModel.Instance().setUSDEquivalent(o.getDouble("result"));
}
} catch (JSONException e1) {
e1.printStackTrace();
}
}
});
您需要将 double
转换为 String
,因为 ION 只允许 String
作为正文参数。所以你可以这样做:
Ion.with(context)
.load("POST",url)
.setBodyParameter("amount",String.valueOf(amount))..
Reference: IonRequestBuilder.setBodyParameter(String name, String value)
我正在尝试通过 Ion Library 调用发送双精度值。我似乎无法发送双精度值,这弄乱了我的代码。我正在尝试通过 api 调用将 INR 转换为美元,反之亦然。我的双精度值是 'amount'.
Ion.with(context)
.load("POST",url)
.setBodyParameter("amount",amount)
.asString()
.setCallback(new FutureCallback<String>() {
@RequiresApi(api = Build.VERSION_CODES.N)
@Override
public void onCompleted(Exception e, String result) {
try {
JSONObject o = new JSONObject(result);
if (o.getString("code").equals("200")) {
PriceModel.Instance().setUSDEquivalent(o.getDouble("result"));
}
} catch (JSONException e1) {
e1.printStackTrace();
}
}
});
您需要将 double
转换为 String
,因为 ION 只允许 String
作为正文参数。所以你可以这样做:
Ion.with(context)
.load("POST",url)
.setBodyParameter("amount",String.valueOf(amount))..
Reference: IonRequestBuilder.setBodyParameter(String name, String value)