diff --git a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/tikhup/TikHupController.java b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/tikhup/TikHupController.java index 50eceff67d..fc1c4de649 100644 --- a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/tikhup/TikHupController.java +++ b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/tikhup/TikHupController.java @@ -46,6 +46,17 @@ public class TikHupController { return tikHupService.fetch_user_post_videos(type, sec_user_id,max_cursor, count); } + + @PostMapping("/postTikHup") + @Operation( + summary = "获取用户主页作品数据", + description = "通过TikHup API获取指定用户的TikTok作品数据,包括视频列表、用户信息等" + ) + public Object postTikHup(@RequestParam String type,@RequestParam String methodType,@RequestParam String urlParams) { + return tikHupService.postTikHup(type, methodType,urlParams); + } + + @PostMapping("/videoToCharacters") @Operation(summary = "音频转文字", description = "音频转文字接口") public Object videoToCharacters(@RequestBody Map fileLinkMap) { diff --git a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/tikhup/vo/TikTokenVO.java b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/tikhup/vo/TikTokenVO.java index 6913526c49..d67520fdd9 100644 --- a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/tikhup/vo/TikTokenVO.java +++ b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/tikhup/vo/TikTokenVO.java @@ -14,4 +14,7 @@ public class TikTokenVO { @TableField(value = "platform_token") private String platformToken; + @TableField(value = "interface_type") + private String interfaceType; + } diff --git a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/dal/mysql/tikhup/TikTokenMapper.java b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/dal/mysql/tikhup/TikTokenMapper.java index 689b00424e..54d627da3a 100644 --- a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/dal/mysql/tikhup/TikTokenMapper.java +++ b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/dal/mysql/tikhup/TikTokenMapper.java @@ -11,4 +11,8 @@ public interface TikTokenMapper extends BaseMapperX { return selectOne("platform_url",platformUrl); } + default TikTokenVO getInterfaceUrl(String interfaceType) { + return selectOne("interface_type",interfaceType); + } + } diff --git a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/service/tikhup/TikHupService.java b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/service/tikhup/TikHupService.java index a932b48ab5..6466e62982 100644 --- a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/service/tikhup/TikHupService.java +++ b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/service/tikhup/TikHupService.java @@ -16,6 +16,9 @@ public interface TikHupService { */ Object fetch_user_post_videos(String type,String sec_user_id,int max_cursor, int count); + + Object postTikHup(String type,String methodType,String urlParams); + /** * 音频转文字 * @param downloadUrl 下载地址 diff --git a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/service/tikhup/TikHupServiceImpl.java b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/service/tikhup/TikHupServiceImpl.java index 2e586a273f..3a1e8fe108 100644 --- a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/service/tikhup/TikHupServiceImpl.java +++ b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/service/tikhup/TikHupServiceImpl.java @@ -58,6 +58,33 @@ public class TikHupServiceImpl implements TikHupService{ return new HashMap<>(); } + @Override + public Object postTikHup(String type,String methodType,String urlParams){ + TikTokenVO tikTokenVO = tikTokenMapper.getInterfaceUrl(type); + String Authorization = tikTokenVO.getPlatformToken(); + String url = tikTokenVO.getPlatformUrl(); + try{ + Unirest.setTimeouts(0, 0); + HttpResponse response; + if("post".equals(methodType)){ + response = Unirest.post(url + "?" + urlParams) + .header("Authorization", "Bearer "+Authorization) + .asString(); + } else { + response = Unirest.get(url + "?" + urlParams) + .header("Authorization", "Bearer "+Authorization) + .asString(); + } + if(response.getStatus() == 200){ + Long userId = SecurityFrameworkUtils.getLoginUser().getId(); + return JSON.parseObject(response.getBody()); + } + }catch (Exception e){ + log.error("{}接口调用异常",url); + } + return new HashMap<>(); + } + private final String appKey = "sldJ4XSpYp3rKALZ "; private final String accessKeyId = "LTAI5tPV9Ag3csf41GZjaLTA"; private final String accessKeySecret = "kDqlGeJTKw6tJtFYiaY8vQTFuVIQDs";