新增对Jellyfin的搜刮(但未完成自动化)

新增音乐分享功能
修复BT下载地址错误
This commit is contained in:
2021-10-21 12:19:53 +08:00
parent ef1ba6f61f
commit a6b9e4a6ac
7 changed files with 251 additions and 29 deletions

View File

@@ -3,14 +3,12 @@ package com.yutou.nas.Controllers;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yutou.nas.mybatis.model.MusicData;
import com.yutou.nas.utils.ConfigTools;
import com.yutou.nas.utils.*;
import com.yutou.nas.Services.impl.MusicToolsServiceImpl;
import com.yutou.nas.utils.Tools;
import org.springframework.core.io.FileSystemResource;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller;
import com.yutou.nas.utils.StringUtils;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@@ -21,6 +19,7 @@ import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.Base64;
import java.util.List;
import java.util.UUID;
import static com.yutou.nas.Datas.AppData.defaultMusicPath;
@@ -209,5 +208,45 @@ public class MusicController {
return null;
}
}
@RequestMapping("/nas/music/share.do")
@ResponseBody
public JSONObject share(@RequestBody JSONObject data){
System.out.println(data);
String file=data.getString("file");
String token=data.getString("token");
JSONObject json=new JSONObject();
File music=new File(file);
if(music.exists()){
String key=Tools.getMD5(UUID.randomUUID().toString()+music.getAbsolutePath());
RedisTools.set(key,file,3600);
JSONObject item=new JSONObject();
item.put("share",key);
json.put("code",1);
json.put("msg","ok");
json.put("data",item);
}else{
json.put("code",-1);
json.put("msg","文件不存在");
json.put("data","{}");
}
return json;
}
@RequestMapping("/nas/music/playShare.do")
@ResponseBody
public JSONObject playShare(String token) throws UnsupportedEncodingException {
JSONObject json=new JSONObject();
String redis=RedisTools.get(token);
if(redis!=null&&!"-999".equals(token)){
String file=redis;
JSONObject item=new JSONObject();
item.put("file",file);
json.put("code",0);
json.put("data",item);
}else{
json.put("code",-1);
json.put("msg","分享已过期");
}
return json;
}
}