修复fastjson的代码

This commit is contained in:
Yutousama 2022-05-03 20:08:51 +08:00
parent 4bcf56207d
commit 9bfe05b119
25 changed files with 90 additions and 77 deletions

View File

@ -65,8 +65,8 @@
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --> <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency> <dependency>
<groupId>com.alibaba</groupId> <groupId>com.alibaba.fastjson2</groupId>
<artifactId>fastjson</artifactId> <artifactId>fastjson2</artifactId>
<version>2.0.2</version> <version>2.0.2</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/com.jcraft/jsch --> <!-- https://mvnrepository.com/artifact/com.jcraft/jsch -->

View File

@ -1,6 +1,6 @@
package com.yutou.nas.Controllers; package com.yutou.nas.Controllers;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.utils.RedisTools; import com.yutou.nas.utils.RedisTools;
import com.yutou.nas.utils.StringUtils; import com.yutou.nas.utils.StringUtils;
import com.yutou.nas.utils.Tools; import com.yutou.nas.utils.Tools;

View File

@ -1,6 +1,6 @@
package com.yutou.nas.Controllers; package com.yutou.nas.Controllers;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.utils.QQBotManager; import com.yutou.nas.utils.QQBotManager;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;

View File

@ -1,7 +1,8 @@
package com.yutou.nas.Controllers; package com.yutou.nas.Controllers;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.Services.impl.MusicToolsServiceImpl; import com.yutou.nas.Services.impl.MusicToolsServiceImpl;
import com.yutou.nas.mybatis.model.MusicData; import com.yutou.nas.mybatis.model.MusicData;
import com.yutou.nas.utils.ConfigTools; import com.yutou.nas.utils.ConfigTools;
@ -37,7 +38,7 @@ public class MusicController {
json.put("code", 0); json.put("code", 0);
json.put("scan", musicTools.isScan()); json.put("scan", musicTools.isScan());
json.put("size", musicTools.getLength()); json.put("size", musicTools.getLength());
json.put("data", JSONArray.toJSON(musicTools.getMusicList(true))); json.put("data", JSON.toJSON(musicTools.getMusicList(true)));
return json.toJSONString(); return json.toJSONString();
} }
@ -59,7 +60,7 @@ public class MusicController {
json.put("code", 0); json.put("code", 0);
json.put("scan", musicTools.isScan()); json.put("scan", musicTools.isScan());
json.put("size", musicTools.getLength()); json.put("size", musicTools.getLength());
json.put("data", JSONArray.toJSON(musicTools.getPath(path, type, true))); json.put("data", JSON.toJSON(musicTools.getPath(path, type, true)));
return json.toJSONString(); return json.toJSONString();
} }
@ -70,9 +71,9 @@ public class MusicController {
JSONObject json = new JSONObject(); JSONObject json = new JSONObject();
json.put("code", 0); json.put("code", 0);
if (StringUtils.isEmpty(album)) { if (StringUtils.isEmpty(album)) {
json.put("data", JSONArray.toJSON(musicTools.getAllAlbum())); json.put("data", JSON.toJSON(musicTools.getAllAlbum()));
} else { } else {
json.put("data", JSONArray.toJSON(musicTools.selectAlbum(album, true))); json.put("data", JSON.toJSON(musicTools.selectAlbum(album, true)));
} }
return json.toJSONString(); return json.toJSONString();
} }
@ -84,9 +85,9 @@ public class MusicController {
JSONObject json = new JSONObject(); JSONObject json = new JSONObject();
json.put("code", 0); json.put("code", 0);
if (StringUtils.isEmpty(artist)) { if (StringUtils.isEmpty(artist)) {
json.put("data", JSONArray.toJSON(musicTools.getAllArtist())); json.put("data", JSON.toJSON(musicTools.getAllArtist()));
} else { } else {
json.put("data", JSONArray.toJSON(musicTools.selectArtist(artist, true))); json.put("data", JSON.toJSON(musicTools.selectArtist(artist, true)));
} }
return json.toJSONString(); return json.toJSONString();
} }

View File

@ -1,7 +1,8 @@
package com.yutou.nas.Controllers; package com.yutou.nas.Controllers;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.mybatis.dao.MusicDataDao; import com.yutou.nas.mybatis.dao.MusicDataDao;
import com.yutou.nas.mybatis.dao.MusicFavoritesDao; import com.yutou.nas.mybatis.dao.MusicFavoritesDao;
import com.yutou.nas.mybatis.dao.MusicFavoritesDirDao; import com.yutou.nas.mybatis.dao.MusicFavoritesDirDao;
@ -152,7 +153,7 @@ public class MusicFavoritesController {
} }
list.clear(); list.clear();
json.put("code", 0); json.put("code", 0);
json.put("data", JSONArray.toJSON(dataList)); json.put("data", JSON.toJSON(dataList));
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
json.put("code", -1); json.put("code", -1);

View File

@ -1,6 +1,6 @@
package com.yutou.nas.Controllers; package com.yutou.nas.Controllers;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.interfaces.DownloadInterface; import com.yutou.nas.interfaces.DownloadInterface;
import com.yutou.nas.utils.QQBotManager; import com.yutou.nas.utils.QQBotManager;
import com.yutou.nas.utils.Tools; import com.yutou.nas.utils.Tools;

View File

@ -1,6 +1,6 @@
package com.yutou.nas.Controllers; package com.yutou.nas.Controllers;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson2.JSONArray;
import com.yutou.nas.utils.*; import com.yutou.nas.utils.*;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;

View File

@ -1,6 +1,7 @@
package com.yutou.nas.Controllers; package com.yutou.nas.Controllers;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.utils.RedisTools; import com.yutou.nas.utils.RedisTools;
import com.yutou.nas.utils.Tools; import com.yutou.nas.utils.Tools;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
@ -60,7 +61,7 @@ public class UpdateIp {
if(isNas){ if(isNas){
String adminAddress= RedisTools.get("adminAddress"); String adminAddress= RedisTools.get("adminAddress");
if(adminAddress!=null) { if(adminAddress!=null) {
JSONObject json=JSONObject.parseObject(adminAddress); JSONObject json= JSON.parseObject(adminAddress);
line = "proxy_pass http://" +ip+":"+json.getInteger("port")+"/;"; line = "proxy_pass http://" +ip+":"+json.getInteger("port")+"/;";
}else{ }else{
line = line.replace(testIp, ip); line = line.replace(testIp, ip);

View File

@ -1,6 +1,6 @@
package com.yutou.nas.Datas.Jellyfin; package com.yutou.nas.Datas.Jellyfin;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.utils.AppTools; import com.yutou.nas.utils.AppTools;
import lombok.Data; import lombok.Data;

View File

@ -1,6 +1,6 @@
package com.yutou.nas.Datas.Jellyfin; package com.yutou.nas.Datas.Jellyfin;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONObject;
import lombok.Data; import lombok.Data;
@Data @Data

View File

@ -12,7 +12,7 @@ import org.springframework.context.annotation.Import;
@Import(BTDownloadManager.class) @Import(BTDownloadManager.class)
@SpringBootApplication @SpringBootApplication
public class NasApplication { public class NasApplication {
public static final String version="1.2.12"; public static final String version="1.2.13";
public static void main(String[] args) { public static void main(String[] args) {
SpringApplication.run(NasApplication.class, args); SpringApplication.run(NasApplication.class, args);
AppData.defaultMusicPath = (String) ConfigTools.load(ConfigTools.CONFIG, "musicDir"); AppData.defaultMusicPath = (String) ConfigTools.load(ConfigTools.CONFIG, "musicDir");

View File

@ -1,6 +1,6 @@
package com.yutou.nas.Services.impl; package com.yutou.nas.Services.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.Datas.AppData; import com.yutou.nas.Datas.AppData;
import com.yutou.nas.mybatis.dao.MusicDataDao; import com.yutou.nas.mybatis.dao.MusicDataDao;
import com.yutou.nas.mybatis.model.MusicData; import com.yutou.nas.mybatis.model.MusicData;

View File

@ -1,6 +1,6 @@
package com.yutou.nas.Services.impl; package com.yutou.nas.Services.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.Services.IVideoToolsService; import com.yutou.nas.Services.IVideoToolsService;
import com.yutou.nas.bangumi.BangumiTools; import com.yutou.nas.bangumi.BangumiTools;
import com.yutou.nas.interfaces.ObjectInterface; import com.yutou.nas.interfaces.ObjectInterface;

View File

@ -1,7 +1,8 @@
package com.yutou.nas.bangumi; package com.yutou.nas.bangumi;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.mybatis.dao.BangumiItemDao; import com.yutou.nas.mybatis.dao.BangumiItemDao;
import com.yutou.nas.mybatis.dao.BangumiListDao; import com.yutou.nas.mybatis.dao.BangumiListDao;
import com.yutou.nas.mybatis.model.BangumiItem; import com.yutou.nas.mybatis.model.BangumiItem;
@ -67,7 +68,7 @@ public class AnimationController {
JSONObject json = new JSONObject(); JSONObject json = new JSONObject();
json.put("code", 0); json.put("code", 0);
json.put("msg", "ok"); json.put("msg", "ok");
json.put("data", JSONArray.toJSON(listDao.selectByExample(new BangumiListExample()))); json.put("data", JSON.toJSON(listDao.selectByExample(new BangumiListExample())));
return json.toJSONString(); return json.toJSONString();
} }
@ResponseBody @ResponseBody
@ -107,7 +108,7 @@ public class AnimationController {
example.createCriteria().andBidEqualTo(type); example.createCriteria().andBidEqualTo(type);
json.put("code", 0); json.put("code", 0);
json.put("msg", "ok"); json.put("msg", "ok");
json.put("data", JSONArray.toJSON(itemDao.selectByExample(example))); json.put("data", JSON.toJSON(itemDao.selectByExample(example)));
return json.toJSONString(); return json.toJSONString();
} }
@ResponseBody @ResponseBody
@ -128,7 +129,7 @@ public class AnimationController {
item.setCategories(animationData.nameToValue(item.getCategories(),false)+""); item.setCategories(animationData.nameToValue(item.getCategories(),false)+"");
item.setAuthor(animationData.nameToValue(item.getAuthor(),true)+""); item.setAuthor(animationData.nameToValue(item.getAuthor(),true)+"");
} }
JSONArray array= (JSONArray) JSONArray.toJSON(list); JSONArray array= (JSONArray) JSON.toJSON(list);
return array.toJSONString(); return array.toJSONString();
} }
} }

View File

@ -1,7 +1,8 @@
package com.yutou.nas.bangumi; package com.yutou.nas.bangumi;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.utils.HttpTools; import com.yutou.nas.utils.HttpTools;
import java.net.URLEncoder; import java.net.URLEncoder;
@ -25,7 +26,7 @@ public class AnimationData {
com.yutou.nas.utils.Log.i(String.format(animUrl, "" + index, title,type,team)); com.yutou.nas.utils.Log.i(String.format(animUrl, "" + index, title,type,team));
com.yutou.nas.utils.Log.i(rss2jsonUrl + URLEncoder.encode(String.format(animUrl, "" + index, title,type,team), "UTF-8") +String.format( "&api_key=%s&count=500",rss2jsonApi_2)); com.yutou.nas.utils.Log.i(rss2jsonUrl + URLEncoder.encode(String.format(animUrl, "" + index, title,type,team), "UTF-8") +String.format( "&api_key=%s&count=500",rss2jsonApi_2));
String js= HttpTools.get(rss2jsonUrl+ URLEncoder.encode(String.format(animUrl,""+index,title,type,team),"UTF-8")+String.format( "&api_key=%s&count=500",rss2jsonApi_2)); String js= HttpTools.get(rss2jsonUrl+ URLEncoder.encode(String.format(animUrl,""+index,title,type,team),"UTF-8")+String.format( "&api_key=%s&count=500",rss2jsonApi_2));
JSONObject json=JSONObject.parseObject(js); JSONObject json= JSON.parseObject(js);
if(json.getString("status").equals("ok")){ if(json.getString("status").equals("ok")){
return json.getJSONArray("items"); return json.getJSONArray("items");
} }
@ -37,9 +38,9 @@ public class AnimationData {
public int nameToValue(String name,boolean isTeam){ public int nameToValue(String name,boolean isTeam){
JSONArray array; JSONArray array;
if(isTeam){ if(isTeam){
array=JSONArray.parseArray(team); array=JSON.parseArray(team);
}else{ }else{
array=JSONArray.parseArray(type); array=JSON.parseArray(type);
} }
for (Object o : array) { for (Object o : array) {
JSONObject json= (JSONObject) o; JSONObject json= (JSONObject) o;

View File

@ -1,7 +1,8 @@
package com.yutou.nas.bangumi; package com.yutou.nas.bangumi;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.utils.*; import com.yutou.nas.utils.*;
import java.text.ParseException; import java.text.ParseException;
@ -22,7 +23,7 @@ public class BangumiTools {
*/ */
public static JSONObject getBangumi(int day) { public static JSONObject getBangumi(int day) {
String str = HttpTools.get(toDayBangumi); String str = HttpTools.get(toDayBangumi);
JSONArray main = JSONArray.parseArray(str); JSONArray main = JSON.parseArray(str);
if (day == -1) { if (day == -1) {
JSONObject json = new JSONObject(); JSONObject json = new JSONObject();
json.put("bangumi", main); json.put("bangumi", main);
@ -57,7 +58,7 @@ public class BangumiTools {
*/ */
public static JSONObject getBangumiInfo(int id) { public static JSONObject getBangumiInfo(int id) {
String str = HttpTools.get(String.format(BangumiInfo, id + "")); String str = HttpTools.get(String.format(BangumiInfo, id + ""));
return JSONObject.parseObject(str); return JSON.parseObject(str);
} }
public static JSONArray getPeople(int id) { public static JSONArray getPeople(int id) {
@ -114,7 +115,7 @@ public class BangumiTools {
*/ */
public static JSONObject search(String key) { public static JSONObject search(String key) {
String str = HttpTools.get(String.format(SearchBangumi, key)); String str = HttpTools.get(String.format(SearchBangumi, key));
return JSONObject.parseObject(str); return JSON.parseObject(str);
} }
/** /**

View File

@ -1,7 +1,8 @@
package com.yutou.nas.other; package com.yutou.nas.other;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.NasApplication; import com.yutou.nas.NasApplication;
import com.yutou.nas.Services.IVideoToolsService; import com.yutou.nas.Services.IVideoToolsService;
import com.yutou.nas.utils.AppTools; import com.yutou.nas.utils.AppTools;
@ -79,7 +80,7 @@ public class tools {
} }
if (request.getCookies() != null) { if (request.getCookies() != null) {
for (Cookie cookie : request.getCookies()) { for (Cookie cookie : request.getCookies()) {
JSONObject ck = JSONObject.parseObject(JSONObject.toJSONString(cookie)); JSONObject ck = JSON.parseObject(JSON.toJSONString(cookie));
cookies.add(ck); cookies.add(ck);
} }
} }

View File

@ -1,7 +1,8 @@
package com.yutou.nas.utils; package com.yutou.nas.utils;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.Services.IBangumiService; import com.yutou.nas.Services.IBangumiService;
import com.yutou.nas.bangumi.AnimationData; import com.yutou.nas.bangumi.AnimationData;
import com.yutou.nas.mybatis.model.BangumiItem; import com.yutou.nas.mybatis.model.BangumiItem;
@ -63,7 +64,7 @@ public class BTDownloadManager implements ApplicationContextAware {
String url = getRSSUrl(item); String url = getRSSUrl(item);
String _json = HttpTools.get(url); String _json = HttpTools.get(url);
if (!StringUtils.isEmpty(_json)) { if (!StringUtils.isEmpty(_json)) {
JSONObject json = JSONObject.parseObject(_json); JSONObject json = JSON.parseObject(_json);
download(item, json); download(item, json);
} else { } else {
QQBotManager.getInstance().sendMessage(item.getTitle() + "\n下载失败\n"+getDmhyUrl(item)); QQBotManager.getInstance().sendMessage(item.getTitle() + "\n下载失败\n"+getDmhyUrl(item));
@ -153,7 +154,7 @@ public class BTDownloadManager implements ApplicationContextAware {
if (StringUtils.isEmpty(_title)) { if (StringUtils.isEmpty(_title)) {
return new JSONArray(); return new JSONArray();
} }
return JSONArray.parseArray(_title); return JSON.parseArray(_title);
} }
private boolean isDownload(String title, String key) { private boolean isDownload(String title, String key) {
@ -162,7 +163,7 @@ public class BTDownloadManager implements ApplicationContextAware {
if (StringUtils.isEmpty(_title)) { if (StringUtils.isEmpty(_title)) {
return false; return false;
} else { } else {
array = JSONArray.parseArray(_title); array = JSON.parseArray(_title);
} }
return array.contains(key); return array.contains(key);
} }

View File

@ -1,6 +1,7 @@
package com.yutou.nas.utils; package com.yutou.nas.utils;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import java.io.*; import java.io.*;
import java.util.HashSet; import java.util.HashSet;
@ -45,7 +46,7 @@ public class ConfigTools {
String src = readFile(file); String src = readFile(file);
if (src != null) { if (src != null) {
try { try {
JSONObject json = JSONObject.parseObject(src); JSONObject json = JSON.parseObject(src);
return json.getObject(key, t); return json.getObject(key, t);
} catch (Exception e) { } catch (Exception e) {
} }
@ -81,7 +82,7 @@ public class ConfigTools {
if (src == null) { if (src == null) {
src = "{}"; src = "{}";
} }
JSONObject json = JSONObject.parseObject(src); JSONObject json = JSON.parseObject(src);
json.put(key, data); json.put(key, data);
saveFile(file, json.toJSONString()); saveFile(file, json.toJSONString());
return false; return false;

View File

@ -1,7 +1,8 @@
package com.yutou.nas.utils; package com.yutou.nas.utils;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.interfaces.DownloadInterface; import com.yutou.nas.interfaces.DownloadInterface;
import com.yutou.nas.utils.StringUtils; import com.yutou.nas.utils.StringUtils;
@ -22,12 +23,12 @@ public class DepotManager {
public void run() { public void run() {
String str = HttpTools.get("http://tools.yutou233.cn/nas/depot/list.do?token=" + HttpTools.serverKey); String str = HttpTools.get("http://tools.yutou233.cn/nas/depot/list.do?token=" + HttpTools.serverKey);
if (!StringUtils.isEmpty(str)) { if (!StringUtils.isEmpty(str)) {
JSONObject json = JSONObject.parseObject(str); JSONObject json = JSON.parseObject(str);
if (json.getInteger("code") == 1) { if (json.getInteger("code") == 1) {
JSONArray array = json.getJSONArray("data"); JSONArray array = json.getJSONArray("data");
for (Object o : array) { for (Object o : array) {
List<File> list = new ArrayList<>(); List<File> list = new ArrayList<>();
JSONObject item = JSONObject.parseObject(o.toString()); JSONObject item = JSON.parseObject(o.toString());
scanFile(new File(item.getString("path")), new DownloadInterface() { scanFile(new File(item.getString("path")), new DownloadInterface() {
@Override @Override
public void onDownload(File file) { public void onDownload(File file) {

View File

@ -1,6 +1,6 @@
package com.yutou.nas.utils; package com.yutou.nas.utils;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.interfaces.DownloadInterface; import com.yutou.nas.interfaces.DownloadInterface;
import com.yutou.nas.utils.Interfaces.NetworkInterface; import com.yutou.nas.utils.Interfaces.NetworkInterface;

View File

@ -1,7 +1,8 @@
package com.yutou.nas.utils; package com.yutou.nas.utils;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.Datas.Jellyfin.Episode; import com.yutou.nas.Datas.Jellyfin.Episode;
import com.yutou.nas.Datas.Jellyfin.EpisodeData; import com.yutou.nas.Datas.Jellyfin.EpisodeData;
import com.yutou.nas.Datas.Jellyfin.ItemInfo; import com.yutou.nas.Datas.Jellyfin.ItemInfo;
@ -25,13 +26,13 @@ public class JellyfinAPIManager {
public LibsItem getLibs(String key) { public LibsItem getLibs(String key) {
HashMap<String, String> header = getHeader(); HashMap<String, String> header = getHeader();
String httpText = HttpTools.https_get("http://192.168.31.88:8096/Users/e8a13675bb64466dbd81f1e5985ef8c7/Items", header); String httpText = HttpTools.https_get("http://192.168.31.88:8096/Users/e8a13675bb64466dbd81f1e5985ef8c7/Items", header);
JSONObject json = JSONObject.parseObject(httpText); JSONObject json = JSON.parseObject(httpText);
if (key == null) { if (key == null) {
return null; return null;
} }
JSONArray items = json.getJSONArray("Items"); JSONArray items = json.getJSONArray("Items");
for (Object o : items) { for (Object o : items) {
LibsItem item = JSONObject.parseObject(o.toString(), LibsItem.class); LibsItem item = JSON.parseObject(o.toString(), LibsItem.class);
if (item.getName().equals(key)) { if (item.getName().equals(key)) {
return item; return item;
} }
@ -41,15 +42,15 @@ public class JellyfinAPIManager {
public ItemInfo getInfo(String id) { public ItemInfo getInfo(String id) {
String http = HttpTools.https_get("http://192.168.31.88:8096/Users/e8a13675bb64466dbd81f1e5985ef8c7/Items/" + id, getHeader()); String http = HttpTools.https_get("http://192.168.31.88:8096/Users/e8a13675bb64466dbd81f1e5985ef8c7/Items/" + id, getHeader());
return JSONObject.parseObject(http, ItemInfo.class); return JSON.parseObject(http, ItemInfo.class);
} }
public List<LibsItem> getAllItem() { public List<LibsItem> getAllItem() {
String http = HttpTools.https_get("http://192.168.31.88:8096/Users/e8a13675bb64466dbd81f1e5985ef8c7/Items?SortBy=SortName&SortOrder=Ascending&IncludeItemTypes=Series&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CBanner%2CThumb&ParentId=28e774baf8f2fd279e7d58da9890a7d2", getHeader()); String http = HttpTools.https_get("http://192.168.31.88:8096/Users/e8a13675bb64466dbd81f1e5985ef8c7/Items?SortBy=SortName&SortOrder=Ascending&IncludeItemTypes=Series&Recursive=true&Fields=PrimaryImageAspectRatio%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CBanner%2CThumb&ParentId=28e774baf8f2fd279e7d58da9890a7d2", getHeader());
JSONObject json = JSONObject.parseObject(http); JSONObject json = JSON.parseObject(http);
JSONArray items = json.getJSONArray("Items"); JSONArray items = json.getJSONArray("Items");
List<LibsItem> list = JSONArray.parseArray(items.toJSONString(), LibsItem.class); List<LibsItem> list = JSON.parseArray(items.toJSONString(), LibsItem.class);
for (LibsItem item : list) { for (LibsItem item : list) {
item.setInfo(getInfo(item.getId())); item.setInfo(getInfo(item.getId()));
} }
@ -58,16 +59,16 @@ public class JellyfinAPIManager {
public List<LibsItem> getLibsItems(String id) { public List<LibsItem> getLibsItems(String id) {
String httpText = HttpTools.https_get("http://192.168.31.88:8096/Users/e8a13675bb64466dbd81f1e5985ef8c7/Items?ParentId=" + id, getHeader()); String httpText = HttpTools.https_get("http://192.168.31.88:8096/Users/e8a13675bb64466dbd81f1e5985ef8c7/Items?ParentId=" + id, getHeader());
JSONObject json = JSONObject.parseObject(httpText); JSONObject json = JSON.parseObject(httpText);
JSONArray items = json.getJSONArray("Items"); JSONArray items = json.getJSONArray("Items");
return JSONArray.parseArray(items.toJSONString(), LibsItem.class); return JSON.parseArray(items.toJSONString(), LibsItem.class);
} }
public JSONObject getItemShows(String id) { public JSONObject getItemShows(String id) {
String data = HttpTools.https_get(String.format("http://192.168.31.88:8096/Shows/%s/Seasons?userId=e8a13675bb64466dbd81f1e5985ef8c7", String data = HttpTools.https_get(String.format("http://192.168.31.88:8096/Shows/%s/Seasons?userId=e8a13675bb64466dbd81f1e5985ef8c7",
id id
), getHeader()); ), getHeader());
return JSONObject.parseObject(data); return JSON.parseObject(data);
} }
public JSONObject getEpisodesForJson(String parentID, String id) { public JSONObject getEpisodesForJson(String parentID, String id) {
@ -75,24 +76,24 @@ public class JellyfinAPIManager {
parentID, parentID,
id id
), getHeader()); ), getHeader());
return JSONObject.parseObject(data); return JSON.parseObject(data);
} }
public List<Episode> getEpisodes(String parentId, String id) { public List<Episode> getEpisodes(String parentId, String id) {
JSONObject json = getEpisodesForJson(parentId, id); JSONObject json = getEpisodesForJson(parentId, id);
JSONArray episodes = json.getJSONArray("Items"); JSONArray episodes = json.getJSONArray("Items");
return JSONArray.parseArray(episodes.toJSONString(), Episode.class); return JSON.parseArray(episodes.toJSONString(), Episode.class);
} }
public JSONObject getEpisodesDataForJson(String id) { public JSONObject getEpisodesDataForJson(String id) {
String data = HttpTools.https_get(String.format("http://192.168.31.88:8096/Users/e8a13675bb64466dbd81f1e5985ef8c7/Items/%s", String data = HttpTools.https_get(String.format("http://192.168.31.88:8096/Users/e8a13675bb64466dbd81f1e5985ef8c7/Items/%s",
id id
), getHeader()); ), getHeader());
return JSONObject.parseObject(data); return JSON.parseObject(data);
} }
public EpisodeData getEpisodeData(String id) { public EpisodeData getEpisodeData(String id) {
return JSONObject.parseObject(getEpisodesDataForJson(id).toString(), EpisodeData.class); return JSON.parseObject(getEpisodesDataForJson(id).toString(), EpisodeData.class);
} }
public String getPathForEpisode(String parentId, String id) { public String getPathForEpisode(String parentId, String id) {
@ -227,19 +228,19 @@ public class JellyfinAPIManager {
System.out.println(_json.getString("Name")); System.out.println(_json.getString("Name"));
if (_json.getString("Name").equals("第一季")) { if (_json.getString("Name").equals("第一季")) {
LibsItem _item = JSONObject.parseObject(_json.toJSONString(), LibsItem.class); LibsItem _item = JSON.parseObject(_json.toJSONString(), LibsItem.class);
manager.saveJellyfinMetaData( manager.saveJellyfinMetaData(
BangumiTools.getBangumiInfo(1424), BangumiTools.getBangumiInfo(1424),
_item _item
); );
} else if (_json.getString("Name").equals("第二季")) { } else if (_json.getString("Name").equals("第二季")) {
LibsItem _item = JSONObject.parseObject(_json.toJSONString(), LibsItem.class); LibsItem _item = JSON.parseObject(_json.toJSONString(), LibsItem.class);
manager.saveJellyfinMetaData( manager.saveJellyfinMetaData(
BangumiTools.getBangumiInfo(3774), BangumiTools.getBangumiInfo(3774),
_item _item
); );
} else if (_json.getString("Name").contains("[剧场版]")) { } else if (_json.getString("Name").contains("[剧场版]")) {
LibsItem _item = JSONObject.parseObject(_json.toJSONString(), LibsItem.class); LibsItem _item = JSON.parseObject(_json.toJSONString(), LibsItem.class);
manager.saveJellyfinMetaData( manager.saveJellyfinMetaData(
BangumiTools.getBangumiInfo(12426), BangumiTools.getBangumiInfo(12426),
_item _item

View File

@ -1,6 +1,6 @@
package com.yutou.nas.utils; package com.yutou.nas.utils;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONObject;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.util.HashMap; import java.util.HashMap;

View File

@ -1,6 +1,7 @@
package com.yutou.nas.utils; package com.yutou.nas.utils;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.yutou.nas.interfaces.DownloadInterface; import com.yutou.nas.interfaces.DownloadInterface;
import com.yutou.nas.interfaces.ObjectInterface; import com.yutou.nas.interfaces.ObjectInterface;
import redis.clients.jedis.Jedis; import redis.clients.jedis.Jedis;
@ -270,7 +271,7 @@ public class RedisTools {
public static void bot(String value) { public static void bot(String value) {
switch (value) { switch (value) {
case "getip": case "getip":
JSONObject json = JSONObject.parseObject(HttpTools.get("https://api.asilu.com/ip/")); JSONObject json = JSON.parseObject(HttpTools.get("https://api.asilu.com/ip/"));
String ip = json.getString("ip"); String ip = json.getString("ip");
QQBotManager.getInstance().sendMessage("服务器IP:\n" + ip); QQBotManager.getInstance().sendMessage("服务器IP:\n" + ip);
break; break;

View File

@ -1,6 +1,7 @@
package com.yutou.nas.utils; package com.yutou.nas.utils;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONArray;
import com.yutou.nas.Controllers.UpdateIp; import com.yutou.nas.Controllers.UpdateIp;
import com.yutou.nas.interfaces.DownloadInterface; import com.yutou.nas.interfaces.DownloadInterface;
import com.yutou.nas.interfaces.ObjectInterface; import com.yutou.nas.interfaces.ObjectInterface;
@ -206,7 +207,7 @@ public class Tools {
public static int checkWebLogin(HttpServletRequest request) { public static int checkWebLogin(HttpServletRequest request) {
JSONArray array = new JSONArray(); JSONArray array = new JSONArray();
if (RedisTools.get("bean") != null) { if (RedisTools.get("bean") != null) {
array = JSONArray.parseArray(RedisTools.get("bean")); array = JSON.parseArray(RedisTools.get("bean"));
} }
if (array.contains(Tools.getRemoteAddress(request))) { if (array.contains(Tools.getRemoteAddress(request))) {
com.yutou.nas.utils.Log.i("IP已被封禁"); com.yutou.nas.utils.Log.i("IP已被封禁");