123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- package com.sxtvs.open.api.odata.controller;
- import cn.hutool.core.util.StrUtil;
- import com.sxtvs.open.api.odata.service.*;
- import com.sxtvs.open.core.sls.AliyunLogger;
- import jakarta.servlet.http.HttpServletRequest;
- import org.apache.commons.io.IOUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.PathVariable;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestParam;
- import java.io.IOException;
- import java.util.Map;
- @Controller
- @RequestMapping("oauth")
- public class OauthController {
- @Autowired
- private OauthService oauthService;
- @Autowired
- private AliyunLogger logger;
- @Autowired
- private DouyinAccountService douyinAccountService;
- @RequestMapping("douyin/callback")
- public String douyinCallback(String code, String state) {
- var token = oauthService.loadStateMapping(state);
- logger.info("key", "oauth/douyin/callback", "code", code, "state", state, "token", token);
- // todo 用户数据入库
- douyinAccountService.upsert(code);
- return "redirect:https://cxzx.smcic.net/mediaAll/index.html#/main_home/convergence";
- }
- @Autowired
- private KuaishouAccountService kuaishouAccountService;
- @RequestMapping("kuaishou/callback")
- public String kuaishouCallback(String code, String state) {
- var token = oauthService.loadStateMapping(state);
- logger.info("key", "oauth/kuaishou/callback", "code", code, "state", state, "token", token);
- // todo 用户数据入库
- kuaishouAccountService.upsert(code);
- return "redirect:https://open.sxtvs.net/login.html?platform=kuaishou";
- }
- @Autowired
- private ToutiaoAccountService toutiaoAccountService;
- @RequestMapping("toutiao/callback")
- public String toutiaoCallback(String code, String state) {
- var token = oauthService.loadStateMapping(state);
- logger.info("key", "oauth/toutiao/callback", "code", code, "state", state, "token", token);
- // todo 用户数据入库
- toutiaoAccountService.upsert(code);
- return "redirect:https://open.sxtvs.net/login.html?platform=toutiao";
- }
- @Autowired
- private WeiboAccountService weiboAccountService;
- @RequestMapping("weibo/callback")
- public String weiboCallback(String code, String state) {
- logger.info("key", "oauth/weibo/callback", "code", code);
- // todo 用户数据入库
- weiboAccountService.upsert(code);
- return "redirect:https://open.sxtvs.net";
- }
- @Autowired
- private BilibiliAccountService bilibiliAccountService;
- @RequestMapping("bilibili/callback")
- public String bilibiliCallback(String code, String state) {
- var token = oauthService.loadStateMapping(state);
- logger.info("key", "oauth/bilibili/callback", "code", code, "state", state, "token", token);
- // todo 用户数据入库
- bilibiliAccountService.upsert(code);
- return "redirect:https://open.sxtvs.net/login.html?platform=bilibili";
- }
- @Autowired
- private WxRestService wxRestService;
- @RequestMapping("weixin/{appid}/callback")
- public String callback(
- @RequestParam("auth_code") String authCode,
- @RequestParam("expires_in") Integer expiresIn,
- @PathVariable("appid") String appid, HttpServletRequest request) {
- logger.info("key", "oauth/{appid}/callback", "data",
- Map.of("authCode", authCode, "expiresIn", expiresIn, "appid", appid));
- if (StrUtil.isBlank(authCode)) {
- try {
- String body = IOUtils.toString(request.getReader());
- logger.error("wxdca527f24b99b4c0/callback error body {}", body);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- // todo 用户数据入库
- wxRestService.apiQueryAuth(authCode);
- return "redirect:https://open.sxtvs.net/login.html?platform=weixin";
- }
- }
|