黑马头条文章和图片审核

时间:2025-04-10 10:37:19
  • package ;
  • import ;
  • import ;
  • import ;
  • import .slf4j.Slf4j;
  • import ;
  • import ;
  • import ;
  • import ;
  • import ;
  • import ;
  • import .*;
  • @Getter
  • @Setter
  • @Slf4j
  • @Component
  • @ConfigurationProperties(prefix = "baiduyun")
  • public class ContentCensor {
  • private String baiduyunId;
  • private String baiduyunSecret;
  • /**
  • * 文本审核
  • *
  • * @param text 待审核文本
  • * @return 审核结果 { log_id, conclusion, conclusionType }
  • * @throws Exception 审核异常
  • */
  • public Map<String, Object> textCensor(String text) throws Exception {
  • String accessToken = (baiduyunId, baiduyunSecret);
  • FormBody formBody = new FormBody.Builder().add("text", text).build();
  • Request request = new Request.Builder()
  • .url(("/rest/2.0/solution/v1/text_censor/v2/user_defined?access_token=%s", accessToken))
  • .method("POST", formBody)
  • .addHeader("Content-Type", "application/x-www-form-urlencoded")
  • .addHeader("Accept", "application/json")
  • .build();
  • Response response = AuthUtil.HTTP_CLIENT.newCall(request).execute();
  • String strBody = ().string();
  • if (() != ()) {
  • JSONObject errObj = (strBody);
  • ("百度文本审核接口调用失败:error_code: {}, error_msg: {}", ("error_code"), ("error_msg"));
  • throw new RuntimeException("百度文本审核接口调用失败");
  • }
  • JSONObject resultObj = (strBody);
  • (resultObj);
  • Map<String, Object> result = new HashMap<>();
  • ("log_id", ("log_id"));
  • ("conclusion", ("conclusion"));
  • ("conclusionType", ("conclusionType"));
  • return result;
  • }
  • /**
  • * 图像审核
  • *
  • * @param imgParams 待审核图像列表 Base64字符串列表
  • * @return 审核结果 { log_id, conclusion, conclusionType }
  • * @throws Exception 审核异常
  • */
  • public Map imgCensor(ArrayList<byte[]> imgParams) throws Exception {
  • String accessToken = (baiduyunId, baiduyunSecret);
  • Request.Builder builder = new Request.Builder()
  • .url(("/rest/2.0/solution/v1/img_censor/v2/user_defined?access_token=%s", accessToken))
  • .addHeader("Content-Type", "application/x-www-form-urlencoded")
  • .addHeader("Accept", "application/json");
  • Map<String, Object> result = new HashMap<>();
  • for (Object imgParam : imgParams) {
  • FormBody formBody = new FormBody.Builder().add("image", (imgParam)).build();
  • Request request = ("POST", formBody).build();
  • Response response = AuthUtil.HTTP_CLIENT.newCall(request).execute();
  • String strBody = ().string();
  • if (() != ()) {
  • JSONObject errObj = (strBody);
  • ("百度图像审核接口调用失败:error_code: {}, error_msg: {}", ("error_code"), ("error_msg"));
  • throw new RuntimeException("百度文本审核接口调用失败");
  • }
  • JSONObject resultObj = (strBody);
  • (resultObj);
  • Short conclusionType = ("conclusionType");
  • // 审核不是通过
  • if (!(conclusionType, ())) {
  • ("log_id", ("log_id"));
  • ("conclusion", ("conclusion"));
  • ("conclusionType", ("conclusionType"));
  • return result;
  • }
  • }
  • ("conclusionType", ());
  • return result;
  • }
  • }