gpt4 book ai didi

java - 如何在jsonobject中设置数组

转载 作者:行者123 更新时间:2023-11-29 18:31:31 25 4
gpt4 key购买 nike

无法根据响应在 JSONObject 中设置数组。下面是我无法在 jsonobject 中设置数组的代码。如何在我的 jsonobject 中发送数组的键值,该对象共享代码从 postman 那里获得的响应

这样写代码对吗

代码--

     JsonArray array = new JsonArray();
array.add(productId);
array.add(qty);
JSONObject jsonObject = new JSONObject();
jsonObject.put("productDetails", array);**

这是 MainActivity 中的代码。问题是我的 JSON 对象中没有获得正确的 jsonarray,因此 API 无法正确命中这些String键值用于传入请求参数

    String key="WSEoaGBifOEIS5dd6vQ5tfbs3R1c8Rsz";
String affId="teamfotog";
String act="photoStores";
String latitude="40.7127753";
String longitude="-74.0059728";
String devinf="Android,7.0";
String appver="1.00";
String productId="6670002";
String qty="3";
//productDetails
**JsonArray array = new JsonArray();
array.add(productId);
array.add(qty);**

JSONObject jsonObject = new JSONObject();
try {
jsonObject.put("apiKey", key);
jsonObject.put("affId", affId);
jsonObject.put("act", act);
jsonObject.put("latitude", latitude);
jsonObject.put("longitude", longitude);
jsonObject.put("devinf", devinf);
jsonObject.put("appver", appver);
**jsonObject.put("productDetails", array);**

JsonParser jsonParser = new JsonParser();

ApiStorePhotoInterface apiInterface = ApiStorePhotoClient.getApi();

Call<PhotoStoreMainModel> call = apiInterface.getResponse((JsonObject) jsonParser.parse(jsonObject.toString().trim()));

请求参数在Jsonbody中--

{"apiKey":"WSEoaGBifOEIS5dd6vQ5tfbs3R1c8Rsz","affId":"teamfotog","act":"photoStores","latitude":"40.7127753","longitude":"-74.0059728","devinf":"Android,7.0","appver":"1.00","productDetails":[{"productId":"6670002","qty":"3"}]}

最佳答案

当然不行。您直接在 JsonArray 中添加对象 (Strings)。在响应主体中,您真正想要的是 JsonArray 中的 JsonObject。试试这个 -

JsonObject productDetail = new JsonObject();
productDetail.addProperty("productId", productId);
productDetail.addProperty("qty", qty);

JsonArray array = new JsonArray();
array.add(productDetail);

关于java - 如何在jsonobject中设置数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56017803/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com