如何从cloudinary服务器获取所有已上传图像的图像URL?

时间:2018-10-06 10:07:19

标签: android cloudinary

我已经成功地在Cloudinary上一张一张地上传了6张图片。现在,我想获取所有图像的URL。如何进入android移动客户端?

我正在使用下面的代码。

 List<String> imageList = new ArrayList<>();
    Map config = ObjectUtils.asMap(

            "cloud_name", "shank",

            "api_key", "644617911542992",

            "api_secret", "oW3bQk8luOT9UlEkRsH21KoQkxY");

    Cloudinary cloudinary = new Cloudinary(config);

    Api api = cloudinary.api();

    JSONObject outerObject = null;

    String jsonNext = null;

    boolean ifWeHaveMoreResources = true;

    while (ifWeHaveMoreResources) {
        try {

            outerObject = new JSONObject(api.resources(ObjectUtils.asMap("max_results", 10, "next_cursor", jsonNext)));

            if (outerObject.has("next_cursor")) {

                jsonNext = outerObject.get("next_cursor").toString();

                ifWeHaveMoreResources = true;

            } else {

                ifWeHaveMoreResources = false;

            }

            JSONArray jsonArray = outerObject.getJSONArray("resources");

            for (int i = 0, size = jsonArray.length(); i < size; i++) {

                JSONObject objectInArray = jsonArray.getJSONObject(i);

                String public_id = objectInArray.get("public_id").toString();

                String url = objectInArray.get("secure_url").toString();

                imageList.add(url);

            }

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

但是它给出了例外。

java.lang.Exception: Administration API is not supported for mobile applications

请帮助我解决此问题。

1 个答案:

答案 0 :(得分:0)

java.lang.Exception:移动应用程序不支持管理API

由于安全原因,Admin API不适用于Android之类的客户端SDK。

您应该使用某种代理服务器对Cloudinary进行此调用(例如,可以使用Cloud Functions for Firebase