package cn.ictgu.API; import cn.ictgu.serv.model.Episode; import cn.ictgu.dto.Video; import cn.ictgu.parse.ParserManager; import cn.ictgu.parse.Parser; import cn.ictgu.tools.UrlUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; import java.util.List; /** * Video 请求接口 * Created by Silence on 2016/12/6. */ @RestController public class VideoAPI { @Autowired private ParserManager parseManager; @GetMapping("/api/video") public Video play(HttpServletRequest request){ String url = request.getParameter("v"); url = url.replaceAll("\\?(spm|from).*" , ""); return parseManager.parseVideo(url); } @GetMapping("/api/episode") public List<Episode> episodes(HttpServletRequest request){ String url = request.getParameter("v"); url = url.replaceAll("\\?(spm|from).*" , ""); String key = UrlUtils.getTopDomain(url); Parser videoParse = parseManager.getParser(key); return videoParse.parseEpisodes(url); } }