提供一个简单的调用钉钉API的接口

#钉钉信息
azure:
  corpid: ding29232xxxxxxxxxxxxxxxxxxxxxx
  appkey: dingiqi4xxxxxxxxxxxx
  appsecret: D3eILE-ATSxapdinzy3jgxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  agentid: 261xxxxxx
 @Value("${azure.appkey}")
 private String appkey;

 @Value("${azure.appsecret}")
 private String appsecret;



public JSONObject getUserClass() {
        JSONObject jsonObject = new JSONObject();
        String accessToken = HttpHelper.getAccess_Token(appkey, appsecret);
        System.out.println(accessToken);
        int pageSize = 10;
        int pageNo = 1;
        String superId = "506462635";

        HttpClient httpClientTeach = HttpClientBuilder.create().build();
        String urlTeach = "https://oapi.dingtalk.com/topapi/edu/dept/list?access_token=" + accessToken;

        HttpPost requestTeach = new HttpPost(urlTeach);
        requestTeach.setHeader("Content-Type", "application/json");

        Map<String, Object> requestBodyTeach = new HashMap<>();
        requestBodyTeach.put("page_size", pageSize);
        requestBodyTeach.put("page_no", pageNo);
        requestBodyTeach.put("super_id", superId);

        try {
            StringEntity entityTeach = new StringEntity(new Gson().toJson(requestBodyTeach));
            requestTeach.setEntity(entityTeach);

            HttpResponse responseTeach = httpClientTeach.execute(requestTeach);
            String responseBodyTeach = EntityUtils.toString(responseTeach.getEntity());

            System.out.println(responseBodyTeach);
            ObjectMapper objectMapper = new ObjectMapper();
            JsonNode jsonNode = objectMapper.readTree(responseBodyTeach);

            JsonNode relationsNodeNew = jsonNode.get("result").get("details");
            if (relationsNodeNew != null && relationsNodeNew.isArray()) {
                for (JsonNode relationNodeNew : relationsNodeNew) {
                    String chain = relationNodeNew.get("chain").asText();
                    String feature = relationNodeNew.get("feature").asText();
                    JsonNode featureNode = objectMapper.readTree(feature);
                    String classLevel = featureNode.get("class_level").asText();
                    String gradeLevel = featureNode.get("grade_level").asText();
                    String deptId = relationNodeNew.get("dept_id").asText();
                    String name = relationNodeNew.get("name").asText();
                    String nick = relationNodeNew.get("nick").asText();



                    System.out.println("1: " + chain);
                    System.out.println("2: " + feature);
                    System.out.println("3: " + classLevel);
                    System.out.println("4: " + gradeLevel);
                    System.out.println("5: " + deptId);
                    System.out.println("6: " + name);
                    System.out.println("7: " + nick);
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

        return jsonObject;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值