diff --git a/.idea/.idea.HyPlayer.NeteaseProvider/.idea/vcs.xml b/.idea/.idea.HyPlayer.NeteaseProvider/.idea/vcs.xml
index 35eb1dd..031351a 100644
--- a/.idea/.idea.HyPlayer.NeteaseProvider/.idea/vcs.xml
+++ b/.idea/.idea.HyPlayer.NeteaseProvider/.idea/vcs.xml
@@ -2,5 +2,11 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/EasyDumper/EasyDumper.csproj b/EasyDumper/EasyDumper.csproj
index 016539c..5fc42e9 100644
--- a/EasyDumper/EasyDumper.csproj
+++ b/EasyDumper/EasyDumper.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumApi.cs
index 2ac147e..23806fa 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Album;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumDetailDynamicApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumDetailDynamicApi.cs
index 58d1018..6ef4ab6 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumDetailDynamicApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumDetailDynamicApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Album;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumSublistApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumSublistApi.cs
index c582296..b6ee17a 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumSublistApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumSublistApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Album;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumSubscribeApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumSubscribeApi.cs
index 5de8dee..68b4144 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumSubscribeApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Album/AlbumSubscribeApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Album;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistAlbumsApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistAlbumsApi.cs
index e35a1c1..2184108 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistAlbumsApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistAlbumsApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Artist;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistDetailApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistDetailApi.cs
index b84011f..695071f 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistDetailApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistDetailApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Artist;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
@@ -53,14 +53,15 @@ public class ArtistDetailDto
[JsonPropertyName("name")] public string? Name { get; set; }
[JsonPropertyName("alias")] public string[]? Alias { get; set; }
[JsonPropertyName("followed")] public bool Followed { get; set; }
- [JsonPropertyName("cover")] public string? PicUrl { get; set; }
- [JsonPropertyName("avatar")] public string? Img1v1Url { get; set; }
+ [JsonPropertyName("picUrl")] public string? PicUrl { get; set; }
+ [JsonPropertyName("img1v1Url")] public string? Img1v1Url { get; set; }
[JsonPropertyName("briefDesc")] public string? BriefDesc { get; set; }
[JsonPropertyName("trans")] public string? Translation { get; set; }
[JsonPropertyName("musicSize")] public int MusicSize { get; set; }
[JsonPropertyName("albumSize")] public int AlbumSize { get; set; }
[JsonPropertyName("mvSize")] public int MvSize { get; set; }
[JsonPropertyName("transNames")] public string[]? TransNames { get; set; }
+ [JsonPropertyName("accountId")] public string? AccountId { get; set; }
}
}
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistSongsApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistSongsApi.cs
index 01137cc..2c361b7 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistSongsApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistSongsApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Artist;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistTopSongApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistTopSongApi.cs
index 7ed8d18..1ca9cc7 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistTopSongApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistTopSongApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Artist;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistVideoApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistVideoApi.cs
index 45e9247..33fceea 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistVideoApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Artist/ArtistVideoApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Artist;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudDeleteApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudDeleteApi.cs
index 4a003cc..99884a1 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudDeleteApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudDeleteApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Cloud;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudGetApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudGetApi.cs
index 436861d..bf31243 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudGetApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudGetApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Cloud;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudPubApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudPubApi.cs
index a99604f..df41cad 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudPubApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudPubApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Cloud;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadCheck.cs b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadCheck.cs
index b70d68e..c82ddaf 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadCheck.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadCheck.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Cloud;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadCoverTokenAllocApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadCoverTokenAllocApi.cs
index 7afa6ce..84e7e93 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadCoverTokenAllocApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadCoverTokenAllocApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Cloud;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadInfoApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadInfoApi.cs
index f528b47..d0bdb4e 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadInfoApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadInfoApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Cloud;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadTokenAllocApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadTokenAllocApi.cs
index cc2d4e5..7c361e3 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadTokenAllocApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Cloud/CloudUploadTokenAllocApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Cloud;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.RawApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Cloud/NeteaseUploadLoadBalancerGetApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Cloud/NeteaseUploadLoadBalancerGetApi.cs
index 00934b1..3e8866d 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Cloud/NeteaseUploadLoadBalancerGetApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Cloud/NeteaseUploadLoadBalancerGetApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Cloud;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.RawApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Cloud/UserCloudApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Cloud/UserCloudApi.cs
index 5eee195..2e4c556 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Cloud/UserCloudApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Cloud/UserCloudApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Cloud;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Cloud/UserCloudDelete.cs b/HyPlayer.NeteaseApi/ApiContracts/Cloud/UserCloudDelete.cs
index 20ce480..140a17f 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Cloud/UserCloudDelete.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Cloud/UserCloudDelete.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Cloud;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Comment/CommentFloorApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Comment/CommentFloorApi.cs
index 71f1112..bb6d636 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Comment/CommentFloorApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Comment/CommentFloorApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Comment;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Extensions;
using HyPlayer.NeteaseApi.Models;
using HyPlayer.NeteaseApi.Models.ResponseModels;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Comment/CommentsApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Comment/CommentsApi.cs
index 4177a3c..cae7a9f 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Comment/CommentsApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Comment/CommentsApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Comment;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Extensions;
using HyPlayer.NeteaseApi.Models;
using HyPlayer.NeteaseApi.Models.ResponseModels;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelDetailApi.cs b/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelDetailApi.cs
index 660eff0..4aa29ef 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelDetailApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelDetailApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.DjChannel;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelProgramsApi.cs b/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelProgramsApi.cs
index 3cb1e7b..d2049df 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelProgramsApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelProgramsApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.DjChannel;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelSubscribedApi.cs b/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelSubscribedApi.cs
index dd6bd3a..9d02236 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelSubscribedApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/DjChannel/DjChannelSubscribedApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.DjChannel;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherEndApi.cs b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherEndApi.cs
index e503773..ad57ac8 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherEndApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherEndApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.ListenTogether.Dual;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherHeartbeatApi.cs b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherHeartbeatApi.cs
index 81e338f..acfb4f4 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherHeartbeatApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherHeartbeatApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.ListenTogether.Dual;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherInvitationAcceptApi.cs b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherInvitationAcceptApi.cs
index aa0ea94..c589865 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherInvitationAcceptApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherInvitationAcceptApi.cs
@@ -1,7 +1,7 @@
-using HyPlayer.NeteaseApi.ApiContracts.Category;
+using HyPlayer.NeteaseApi.ApiContracts.ListenTogether;
using HyPlayer.NeteaseApi.ApiContracts.ListenTogether.Dual;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
@@ -13,7 +13,7 @@ public static partial class NeteaseApis
}
-namespace HyPlayer.NeteaseApi.ApiContracts.Category
+namespace HyPlayer.NeteaseApi.ApiContracts.ListenTogether
{
public class ListenTogetherInvitationAcceptApi : EApiContractBase
diff --git a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherPlayCommandApi.cs b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherPlayCommandApi.cs
index 7f5b432..ab8b966 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherPlayCommandApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherPlayCommandApi.cs
@@ -1,7 +1,7 @@
-using HyPlayer.NeteaseApi.ApiContracts.Category;
+using HyPlayer.NeteaseApi.ApiContracts.ListenTogether;
using HyPlayer.NeteaseApi.ApiContracts.ListenTogether.Dual;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json;
using System.Text.Json.Serialization;
@@ -14,7 +14,7 @@ public static partial class NeteaseApis
}
-namespace HyPlayer.NeteaseApi.ApiContracts.Category
+namespace HyPlayer.NeteaseApi.ApiContracts.ListenTogether
{
public class ListenTogetherPlayCommandApi : EApiContractBase
diff --git a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherRoomCheckApi.cs b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherRoomCheckApi.cs
index c9a1532..39b956f 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherRoomCheckApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherRoomCheckApi.cs
@@ -1,6 +1,6 @@
-using HyPlayer.NeteaseApi.ApiContracts.Category;
+using HyPlayer.NeteaseApi.ApiContracts.ListenTogether;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
@@ -13,7 +13,7 @@ public static partial class NeteaseApis
}
-namespace HyPlayer.NeteaseApi.ApiContracts.Category
+namespace HyPlayer.NeteaseApi.ApiContracts.ListenTogether
{
public class ListenTogetherRoomCheckApi : EApiContractBase
diff --git a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherRoomCreate.cs b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherRoomCreate.cs
index e83c059..ae762ec 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherRoomCreate.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherRoomCreate.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.ListenTogether.Dual;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherStatusApi.cs b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherStatusApi.cs
index d993866..d6065a2 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherStatusApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherStatusApi.cs
@@ -1,7 +1,7 @@
-using HyPlayer.NeteaseApi.ApiContracts.Category;
+using HyPlayer.NeteaseApi.ApiContracts.ListenTogether;
using HyPlayer.NeteaseApi.ApiContracts.ListenTogether.Dual;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
@@ -14,7 +14,7 @@ public static partial class NeteaseApis
}
-namespace HyPlayer.NeteaseApi.ApiContracts.Category
+namespace HyPlayer.NeteaseApi.ApiContracts.ListenTogether
{
public class ListenTogetherStatusApi : EApiContractBase
diff --git a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherSyncListCommandApi.cs b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherSyncListCommandApi.cs
index 877ab4d..afc0908 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherSyncListCommandApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherSyncListCommandApi.cs
@@ -1,6 +1,6 @@
-using HyPlayer.NeteaseApi.ApiContracts.Category;
+using HyPlayer.NeteaseApi.ApiContracts.ListenTogether;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json;
using System.Text.Json.Serialization;
@@ -13,7 +13,7 @@ public static partial class NeteaseApis
}
-namespace HyPlayer.NeteaseApi.ApiContracts.Category
+namespace HyPlayer.NeteaseApi.ApiContracts.ListenTogether
{
public class ListenTogetherSyncListReportApi : EApiContractBase
diff --git a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherSyncListGetApi.cs b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherSyncListGetApi.cs
index 2740ad5..a22c51e 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherSyncListGetApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/ListenTogether/Dual/ListenTogetherSyncListGetApi.cs
@@ -1,6 +1,6 @@
-using HyPlayer.NeteaseApi.ApiContracts.Category;
+using HyPlayer.NeteaseApi.ApiContracts.ListenTogether;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
@@ -13,7 +13,7 @@ public static partial class NeteaseApis
}
-namespace HyPlayer.NeteaseApi.ApiContracts.Category
+namespace HyPlayer.NeteaseApi.ApiContracts.ListenTogether
{
public class ListenTogetherSyncListGetApi : EApiContractBase
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Login/LoginCellphoneApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Login/LoginCellphoneApi.cs
index e8528c6..7a6fc9d 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Login/LoginCellphoneApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Login/LoginCellphoneApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Login;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Extensions;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Login/LoginEmailApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Login/LoginEmailApi.cs
index ccc0920..a69d217 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Login/LoginEmailApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Login/LoginEmailApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Login;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Extensions;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Login/LoginQrCodeCheck.cs b/HyPlayer.NeteaseApi/ApiContracts/Login/LoginQrCodeCheck.cs
index 2d76754..f8c2af7 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Login/LoginQrCodeCheck.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Login/LoginQrCodeCheck.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Login;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Login/LoginQrCodeUnikey.cs b/HyPlayer.NeteaseApi/ApiContracts/Login/LoginQrCodeUnikey.cs
index 61b1c92..520d451 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Login/LoginQrCodeUnikey.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Login/LoginQrCodeUnikey.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Login;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Login/LoginStatusApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Login/LoginStatusApi.cs
index 1b9ee8b..372a38b 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Login/LoginStatusApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Login/LoginStatusApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Login;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/AiDjContentRcmdInfo.cs b/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/AiDjContentRcmdInfo.cs
index b823259..4803e0e 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/AiDjContentRcmdInfo.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/AiDjContentRcmdInfo.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.PersonalFM;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/AiDjSkip.cs b/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/AiDjSkip.cs
index b3b78b3..497efc7 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/AiDjSkip.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/AiDjSkip.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.PersonalFM;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/PersonalFMApi.cs b/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/PersonalFMApi.cs
index c1fc7eb..1bbafc8 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/PersonalFMApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/PersonalFM/PersonalFMApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.PersonalFM;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistCategoryListApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistCategoryListApi.cs
index 3e214de..03b44fb 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistCategoryListApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistCategoryListApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Playlist;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistCreateApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistCreateApi.cs
index 50ef8b1..92ba275 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistCreateApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistCreateApi.cs
@@ -1,6 +1,7 @@
using HyPlayer.NeteaseApi.ApiContracts.Playlist;
using HyPlayer.NeteaseApi.Bases;
using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistDetailApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistDetailApi.cs
index 5045b50..662ba33 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistDetailApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistDetailApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Playlist;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistPrivacyApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistPrivacyApi.cs
index 6c4d572..31b4e9b 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistPrivacyApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistPrivacyApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Playlist;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistTracksGetApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistTracksGetApi.cs
index e4cc4e7..18c69b9 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistTracksGetApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaylistTracksGetApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Playlist;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaymodeIntelligenceListApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaymodeIntelligenceListApi.cs
index 806358a..58d625e 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaymodeIntelligenceListApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Playlist/PlaymodeIntelligenceListApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Playlist;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Playlist/ToplistApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Playlist/ToplistApi.cs
index 2da1980..a62e6ba 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Playlist/ToplistApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Playlist/ToplistApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Playlist;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.RawApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Recommend/SearchApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Recommend/SearchApi.cs
index 3abb12b..e0ca1c3 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Recommend/SearchApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Recommend/SearchApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Recommend;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Song/LikeApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Song/LikeApi.cs
index 9b87a56..f0f1c90 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Song/LikeApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Song/LikeApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Song;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Song/LyricApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Song/LyricApi.cs
index 9fbf586..f4ae73a 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Song/LyricApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Song/LyricApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Song;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Song/SongChorusApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Song/SongChorusApi.cs
index cdeb47c..05d30ce 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Song/SongChorusApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Song/SongChorusApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Song;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Song/SongDetailApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Song/SongDetailApi.cs
index 07e4c6f..40894e0 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Song/SongDetailApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Song/SongDetailApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Song;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Song/SongUrlApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Song/SongUrlApi.cs
index f5939c9..571def5 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Song/SongUrlApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Song/SongUrlApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Song;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Song/SongWikiSummaryApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Song/SongWikiSummaryApi.cs
index 2c9a8a3..fc5c025 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Song/SongWikiSummaryApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Song/SongWikiSummaryApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Song;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/User/UserDetailApi.cs b/HyPlayer.NeteaseApi/ApiContracts/User/UserDetailApi.cs
index 893ac1d..139c0ee 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/User/UserDetailApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/User/UserDetailApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.User;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/User/UserPlaylistApi.cs b/HyPlayer.NeteaseApi/ApiContracts/User/UserPlaylistApi.cs
index 65d5a83..960587a 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/User/UserPlaylistApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/User/UserPlaylistApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.User;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
@@ -18,7 +18,7 @@ public static partial class NeteaseApis
namespace HyPlayer.NeteaseApi.ApiContracts.User
{
- public class UserPlaylistApi : WeApiContractBase
{
public override string IdentifyRoute => "/user/playlist";
@@ -36,6 +36,8 @@ public override Task MapRequest(ApiHandlerOption option)
};
return Task.CompletedTask;
}
+
+ public override string ApiPath { get; protected set; } = "/api/user/playlist";
}
public class UserPlaylistRequest : RequestBase
@@ -48,7 +50,7 @@ public class UserPlaylistRequest : RequestBase
///
/// 获取数目
///
- public int Limit { get; set; } = 30;
+ public int Limit { get; set; } = 1000;
///
/// 起始位置
@@ -61,11 +63,10 @@ public class UserPlaylistResponse : CodedResponseBase
[JsonPropertyName("playlist")] public PlaylistDto[]? Playlists { get; set; }
}
- public class UserPlaylistActualRequest : WeApiActualRequestBase
+ public class UserPlaylistActualRequest : EApiActualRequestBase
{
[JsonPropertyName("uid")] public string? Uid { get; set; }
- [JsonPropertyName("limit")] public int Limit { get; set; } = 30;
+ [JsonPropertyName("limit")] public int Limit { get; set; } = 1000;
[JsonPropertyName("offset")] public int Offset { get; set; }
- [JsonPropertyName("includeVideo")] public bool IncludeVideo => true;
}
}
\ No newline at end of file
diff --git a/HyPlayer.NeteaseApi/ApiContracts/User/UserRecordApi.cs b/HyPlayer.NeteaseApi/ApiContracts/User/UserRecordApi.cs
index da7d9d6..660aaa4 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/User/UserRecordApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/User/UserRecordApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.User;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Utils/BatchApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Utils/BatchApi.cs
index 08efc4b..caf4bd9 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Utils/BatchApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Utils/BatchApi.cs
@@ -1,6 +1,6 @@
-using HyPlayer.NeteaseApi.ApiContracts.Category;
+using HyPlayer.NeteaseApi.ApiContracts.Utils;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Extensions;
using HyPlayer.NeteaseApi.Extensions.JsonSerializer;
using System.Collections;
@@ -14,7 +14,7 @@ public static partial class NeteaseApis
}
-namespace HyPlayer.NeteaseApi.ApiContracts.Category
+namespace HyPlayer.NeteaseApi.ApiContracts.Utils
{
public class BatchApi : EApiContractBase
{
@@ -50,10 +50,10 @@ public override async Task> ProcessRespo
{
if (kvp.Key == "code")
{
- if (kvp.Value.Value != "200")
+ if (kvp.Value?.Value != "200")
{
return Results.CreateError(
- new ErrorResultBase(int.Parse(kvp.Value.Value ?? "500"), "返回值不为 200"));
+ new ErrorResultBase(int.Parse(kvp.Value?.Value ?? "500"), "返回值不为 200"));
}
continue;
}
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Utils/LoginAnnounceDeviceApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Utils/LoginAnnounceDeviceApi.cs
new file mode 100644
index 0000000..b4acb49
--- /dev/null
+++ b/HyPlayer.NeteaseApi/ApiContracts/Utils/LoginAnnounceDeviceApi.cs
@@ -0,0 +1,66 @@
+using HyPlayer.NeteaseApi.ApiContracts.Utils;
+using HyPlayer.NeteaseApi.Bases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
+using HyPlayer.NeteaseApi.Extensions;
+using System.Text.Json.Serialization;
+
+namespace HyPlayer.NeteaseApi.ApiContracts
+{
+
+ public static partial class NeteaseApis
+ {
+ public static LoginAnnounceDeviceApi LoginAnnounceDeviceApi => new();
+ }
+}
+
+
+namespace HyPlayer.NeteaseApi.ApiContracts.Utils
+{
+
+ public class LoginAnnounceDeviceApi : EApiContractBase
+ {
+ public override string IdentifyRoute => "/login/anon/device";
+ public override string Url { get; protected set; } = "https://interface.music.163.com/eapi/login/anon/device";
+ public override HttpMethod Method => HttpMethod.Post;
+ public override Task MapRequest(ApiHandlerOption option)
+ {
+ Request ??= new LoginAnnounceDeviceRequest();
+ option.Cookies["deviceId"] = NeteaseUtils.GetDeviceId(Request.Imei, Request.Mac, Request.AndroidId, Request.LocalId);
+ option.Cookies["mobilename"] = Request.DeviceName;
+ option.Cookies["os"] = Request.OS;
+ option.Cookies["channel"] = Request.Channel;
+ option.Cookies["deviceType"] = Request.DeviceType;
+ return Task.CompletedTask;
+ }
+
+ public override string ApiPath { get; protected set; } = "/api/login/anon/device";
+ }
+
+ public class LoginAnnounceDeviceRequest : RequestBase
+ {
+
+ public string? Imei { get; set; }
+ public string Mac { get; set; } = "02:00:00:00:00:00";
+ public string? AndroidId { get; set; }
+ public string? LocalId { get; set; }
+ public string DeviceName { get; set; } = "car";
+ public string OS { get; set; } = "andrcar";
+ public string Channel { get; set; } = "release";
+ public string DeviceType { get; set; } = "andrcar";
+
+ }
+
+ public class LoginAnnounceDeviceResponse : CodedResponseBase
+ {
+ public class LoginAnnounceDeviceResponseData
+ {
+ [JsonPropertyName("userId")] public string? Id { get; set; }
+ }
+ [JsonPropertyName("data")] public LoginAnnounceDeviceResponseData? Data { get; set; }
+ }
+
+ public class LoginAnnounceDeviceActualRequest : EApiActualRequestBase
+ {
+
+ }
+}
\ No newline at end of file
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Utils/PasswordUrlDecodeApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Utils/PasswordUrlDecodeApi.cs
index 5b41b9f..23cb9e2 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Utils/PasswordUrlDecodeApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Utils/PasswordUrlDecodeApi.cs
@@ -1,6 +1,6 @@
-using HyPlayer.NeteaseApi.ApiContracts.Category;
+using HyPlayer.NeteaseApi.ApiContracts.Utils;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
@@ -13,7 +13,7 @@ public static partial class NeteaseApis
}
-namespace HyPlayer.NeteaseApi.ApiContracts.Category
+namespace HyPlayer.NeteaseApi.ApiContracts.Utils
{
public class PasswordUrlDecodeApi : EApiContractBase
diff --git a/HyPlayer.NeteaseApi/ApiContracts/User/RegisterAnonymousApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Utils/RegisterAnonymousApi.cs
similarity index 74%
rename from HyPlayer.NeteaseApi/ApiContracts/User/RegisterAnonymousApi.cs
rename to HyPlayer.NeteaseApi/ApiContracts/Utils/RegisterAnonymousApi.cs
index e449170..836dd6f 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/User/RegisterAnonymousApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Utils/RegisterAnonymousApi.cs
@@ -1,4 +1,4 @@
-using HyPlayer.NeteaseApi.ApiContracts.Category;
+using HyPlayer.NeteaseApi.ApiContracts.Utils;
using HyPlayer.NeteaseApi.Bases;
using HyPlayer.NeteaseApi.Bases.ApiContractBases;
using System.Security.Cryptography;
@@ -10,15 +10,15 @@ namespace HyPlayer.NeteaseApi.ApiContracts
public static partial class NeteaseApis
{
- public static RegisterAnounymousApi RegisterAnounymousApi => new();
+ public static RegisterAnonymousApi RegisterAnonymousApi => new();
}
}
-namespace HyPlayer.NeteaseApi.ApiContracts.Category
+namespace HyPlayer.NeteaseApi.ApiContracts.Utils
{
- public class RegisterAnounymousApi : WeApiContractBase
+ public class RegisterAnonymousApi : WeApiContractBase
{
public override string IdentifyRoute => "/register/anonimous";
public override string Url { get; protected set; } = "https://music.163.com/weapi/register/anonimous";
@@ -26,7 +26,7 @@ public class RegisterAnounymousApi : WeApiContractBase()
{
- ["songId"] = Request.SongId
+ ["songId"] = Request.SongId!
});
}
}
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Video/MlogUrlApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Video/MlogUrlApi.cs
index 88cbca9..958eb15 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Video/MlogUrlApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Video/MlogUrlApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Video;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Video/VideoDetailApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Video/VideoDetailApi.cs
index dfc62ee..2135f39 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Video/VideoDetailApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Video/VideoDetailApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Video;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using HyPlayer.NeteaseApi.Models.ResponseModels;
using System.Text.Json.Serialization;
diff --git a/HyPlayer.NeteaseApi/ApiContracts/Video/VideoUrlApi.cs b/HyPlayer.NeteaseApi/ApiContracts/Video/VideoUrlApi.cs
index fbd96f5..baa9da3 100644
--- a/HyPlayer.NeteaseApi/ApiContracts/Video/VideoUrlApi.cs
+++ b/HyPlayer.NeteaseApi/ApiContracts/Video/VideoUrlApi.cs
@@ -1,6 +1,6 @@
using HyPlayer.NeteaseApi.ApiContracts.Video;
using HyPlayer.NeteaseApi.Bases;
-using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.ApiContracts
diff --git a/HyPlayer.NeteaseApi/ApiHandlerOption.cs b/HyPlayer.NeteaseApi/ApiHandlerOption.cs
index 0b27016..ba1d700 100644
--- a/HyPlayer.NeteaseApi/ApiHandlerOption.cs
+++ b/HyPlayer.NeteaseApi/ApiHandlerOption.cs
@@ -40,6 +40,7 @@ public class AdditionalParameters
public Dictionary Headers { get; set; } = [];
public Dictionary EApiHeaders { get; set; } = [];
public Dictionary DataTokens { get; set; } = [];
+ public OpenAPIConfigData? OpenAPIConfig { get; set; } = null;
public bool HasValue()
{
if (Cookies.Count > 0 ||
@@ -48,4 +49,26 @@ public bool HasValue()
DataTokens.Count > 0) return true;
return false;
}
+
+
+ public class OpenAPIConfigData
+ {
+ public string? AppId { get; set; }
+ public string? AppSecret { get; set; }
+ public string? RsaPrivateKey { get; set; }
+ public DeviceInfoData? DeviceInfo { get; set; }
+
+ public class DeviceInfoData
+ {
+ public string? Channel { get; set; }
+ public string? DeviceId { get; set; }
+ public string? DeviceType { get; set; }
+ public string? AppVer { get; set; }
+ public string? OS { get; set; }
+ public string? OSVer { get; set; }
+ public string? Brand { get; set; }
+ public string? Model { get; set; }
+ public string? ClientIp { get; set; }
+ }
+ }
}
\ No newline at end of file
diff --git a/HyPlayer.NeteaseApi/Bases/ActualRequestBase.cs b/HyPlayer.NeteaseApi/Bases/ActualRequestBase.cs
deleted file mode 100644
index f3ae5d0..0000000
--- a/HyPlayer.NeteaseApi/Bases/ActualRequestBase.cs
+++ /dev/null
@@ -1,6 +0,0 @@
-namespace HyPlayer.NeteaseApi.Bases;
-
-public class ActualRequestBase
-{
-
-}
\ No newline at end of file
diff --git a/HyPlayer.NeteaseApi/Bases/ApiContractBases/ActualRequestBase.cs b/HyPlayer.NeteaseApi/Bases/ApiContractBases/ActualRequestBase.cs
new file mode 100644
index 0000000..4a4e979
--- /dev/null
+++ b/HyPlayer.NeteaseApi/Bases/ApiContractBases/ActualRequestBase.cs
@@ -0,0 +1,6 @@
+namespace HyPlayer.NeteaseApi.Bases.ApiContractBases;
+
+public class ActualRequestBase
+{
+
+}
\ No newline at end of file
diff --git a/HyPlayer.NeteaseApi/Bases/ApiContractBase.cs b/HyPlayer.NeteaseApi/Bases/ApiContractBases/ApiContractBase.cs
similarity index 97%
rename from HyPlayer.NeteaseApi/Bases/ApiContractBase.cs
rename to HyPlayer.NeteaseApi/Bases/ApiContractBases/ApiContractBase.cs
index 82e1c37..8811e0c 100644
--- a/HyPlayer.NeteaseApi/Bases/ApiContractBase.cs
+++ b/HyPlayer.NeteaseApi/Bases/ApiContractBases/ApiContractBase.cs
@@ -1,3 +1,4 @@
+using HyPlayer.NeteaseApi.Bases.ApiContractBases;
using HyPlayer.NeteaseApi.Extensions;
namespace HyPlayer.NeteaseApi.Bases;
diff --git a/HyPlayer.NeteaseApi/Bases/CodedResponseBase.cs b/HyPlayer.NeteaseApi/Bases/ApiContractBases/CodedResponseBase.cs
similarity index 100%
rename from HyPlayer.NeteaseApi/Bases/CodedResponseBase.cs
rename to HyPlayer.NeteaseApi/Bases/ApiContractBases/CodedResponseBase.cs
diff --git a/HyPlayer.NeteaseApi/Bases/ErrorResultBase.cs b/HyPlayer.NeteaseApi/Bases/ApiContractBases/ErrorResultBase.cs
similarity index 100%
rename from HyPlayer.NeteaseApi/Bases/ErrorResultBase.cs
rename to HyPlayer.NeteaseApi/Bases/ApiContractBases/ErrorResultBase.cs
diff --git a/HyPlayer.NeteaseApi/Bases/ExceptionedErrorBase.cs b/HyPlayer.NeteaseApi/Bases/ApiContractBases/ExceptionedErrorBase.cs
similarity index 100%
rename from HyPlayer.NeteaseApi/Bases/ExceptionedErrorBase.cs
rename to HyPlayer.NeteaseApi/Bases/ApiContractBases/ExceptionedErrorBase.cs
diff --git a/HyPlayer.NeteaseApi/Bases/IdOrIdListRequest.cs b/HyPlayer.NeteaseApi/Bases/ApiContractBases/IdOrIdListRequest.cs
similarity index 100%
rename from HyPlayer.NeteaseApi/Bases/IdOrIdListRequest.cs
rename to HyPlayer.NeteaseApi/Bases/ApiContractBases/IdOrIdListRequest.cs
diff --git a/HyPlayer.NeteaseApi/Bases/RequestBase.cs b/HyPlayer.NeteaseApi/Bases/ApiContractBases/RequestBase.cs
similarity index 100%
rename from HyPlayer.NeteaseApi/Bases/RequestBase.cs
rename to HyPlayer.NeteaseApi/Bases/ApiContractBases/RequestBase.cs
diff --git a/HyPlayer.NeteaseApi/Bases/ResponseBase.cs b/HyPlayer.NeteaseApi/Bases/ApiContractBases/ResponseBase.cs
similarity index 100%
rename from HyPlayer.NeteaseApi/Bases/ResponseBase.cs
rename to HyPlayer.NeteaseApi/Bases/ApiContractBases/ResponseBase.cs
diff --git a/HyPlayer.NeteaseApi/Bases/EApiActualRequestBase.cs b/HyPlayer.NeteaseApi/Bases/EApiContractBases/EApiActualRequestBase.cs
similarity index 71%
rename from HyPlayer.NeteaseApi/Bases/EApiActualRequestBase.cs
rename to HyPlayer.NeteaseApi/Bases/EApiContractBases/EApiActualRequestBase.cs
index d4ac365..c98ac8a 100644
--- a/HyPlayer.NeteaseApi/Bases/EApiActualRequestBase.cs
+++ b/HyPlayer.NeteaseApi/Bases/EApiContractBases/EApiActualRequestBase.cs
@@ -1,6 +1,7 @@
-using System.Text.Json.Serialization;
+using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using System.Text.Json.Serialization;
-namespace HyPlayer.NeteaseApi.Bases;
+namespace HyPlayer.NeteaseApi.Bases.EApiContractBases;
public class EApiActualRequestBase : ActualRequestBase
{
diff --git a/HyPlayer.NeteaseApi/Bases/ApiContractBases/EApiContractBase.cs b/HyPlayer.NeteaseApi/Bases/EApiContractBases/EApiContractBase.cs
similarity index 99%
rename from HyPlayer.NeteaseApi/Bases/ApiContractBases/EApiContractBase.cs
rename to HyPlayer.NeteaseApi/Bases/EApiContractBases/EApiContractBase.cs
index ab7e8cf..344ff54 100644
--- a/HyPlayer.NeteaseApi/Bases/ApiContractBases/EApiContractBase.cs
+++ b/HyPlayer.NeteaseApi/Bases/EApiContractBases/EApiContractBase.cs
@@ -5,7 +5,7 @@
using System.Text.Json;
using System.Text.RegularExpressions;
-namespace HyPlayer.NeteaseApi.Bases.ApiContractBases;
+namespace HyPlayer.NeteaseApi.Bases.EApiContractBases;
public abstract class
EApiContractBase :
@@ -266,7 +266,7 @@ public string GetRequestJson(TActualRequestMessageMo
#endif
return ret;
}
- catch
+ catch
{
return null;
}
diff --git a/HyPlayer.NeteaseApi/Bases/IBatchableApi.cs b/HyPlayer.NeteaseApi/Bases/EApiContractBases/IBatchableApi.cs
similarity index 88%
rename from HyPlayer.NeteaseApi/Bases/IBatchableApi.cs
rename to HyPlayer.NeteaseApi/Bases/EApiContractBases/IBatchableApi.cs
index 0bb6758..3933c98 100644
--- a/HyPlayer.NeteaseApi/Bases/IBatchableApi.cs
+++ b/HyPlayer.NeteaseApi/Bases/EApiContractBases/IBatchableApi.cs
@@ -1,4 +1,4 @@
-namespace HyPlayer.NeteaseApi.Bases;
+namespace HyPlayer.NeteaseApi.Bases.EApiContractBases;
public interface IBatchableApi
{
diff --git a/HyPlayer.NeteaseApi/Bases/LinuxApiActualRequestBase.cs b/HyPlayer.NeteaseApi/Bases/LinuxApiActualRequestBase.cs
deleted file mode 100644
index 2a94514..0000000
--- a/HyPlayer.NeteaseApi/Bases/LinuxApiActualRequestBase.cs
+++ /dev/null
@@ -1,6 +0,0 @@
-namespace HyPlayer.NeteaseApi.Bases;
-
-public class LinuxApiActualRequestBase : ActualRequestBase
-{
-
-}
\ No newline at end of file
diff --git a/HyPlayer.NeteaseApi/Bases/LinuxApiContractBases/LinuxApiActualRequestBase.cs b/HyPlayer.NeteaseApi/Bases/LinuxApiContractBases/LinuxApiActualRequestBase.cs
new file mode 100644
index 0000000..df6f109
--- /dev/null
+++ b/HyPlayer.NeteaseApi/Bases/LinuxApiContractBases/LinuxApiActualRequestBase.cs
@@ -0,0 +1,8 @@
+using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+
+namespace HyPlayer.NeteaseApi.Bases.LinuxApiContractBases;
+
+public class LinuxApiActualRequestBase : ActualRequestBase
+{
+
+}
\ No newline at end of file
diff --git a/HyPlayer.NeteaseApi/Bases/ApiContractBases/LinuxApiContractBase.cs b/HyPlayer.NeteaseApi/Bases/LinuxApiContractBases/LinuxApiContractBase.cs
similarity index 99%
rename from HyPlayer.NeteaseApi/Bases/ApiContractBases/LinuxApiContractBase.cs
rename to HyPlayer.NeteaseApi/Bases/LinuxApiContractBases/LinuxApiContractBase.cs
index c899cf5..2ab926e 100644
--- a/HyPlayer.NeteaseApi/Bases/ApiContractBases/LinuxApiContractBase.cs
+++ b/HyPlayer.NeteaseApi/Bases/LinuxApiContractBases/LinuxApiContractBase.cs
@@ -4,7 +4,7 @@
using System.Text.Json;
using System.Text.RegularExpressions;
-namespace HyPlayer.NeteaseApi.Bases.ApiContractBases;
+namespace HyPlayer.NeteaseApi.Bases.LinuxApiContractBases;
public abstract class LinuxApiContractBase :
ApiContractBase
diff --git a/HyPlayer.NeteaseApi/Bases/RawApiActualRequestBase.cs b/HyPlayer.NeteaseApi/Bases/RawApiContractBases/RawApiActualRequestBase.cs
similarity index 93%
rename from HyPlayer.NeteaseApi/Bases/RawApiActualRequestBase.cs
rename to HyPlayer.NeteaseApi/Bases/RawApiContractBases/RawApiActualRequestBase.cs
index e47853a..42d3afe 100644
--- a/HyPlayer.NeteaseApi/Bases/RawApiActualRequestBase.cs
+++ b/HyPlayer.NeteaseApi/Bases/RawApiContractBases/RawApiActualRequestBase.cs
@@ -1,6 +1,7 @@
-using System.Collections;
+using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using System.Collections;
-namespace HyPlayer.NeteaseApi.Bases;
+namespace HyPlayer.NeteaseApi.Bases.RawApiContractBases;
public abstract class RawApiActualRequestBase : ActualRequestBase, IDictionary
{
diff --git a/HyPlayer.NeteaseApi/Bases/ApiContractBases/RawApiContractBase.cs b/HyPlayer.NeteaseApi/Bases/RawApiContractBases/RawApiContractBase.cs
similarity index 98%
rename from HyPlayer.NeteaseApi/Bases/ApiContractBases/RawApiContractBase.cs
rename to HyPlayer.NeteaseApi/Bases/RawApiContractBases/RawApiContractBase.cs
index e85c6d9..cfe2ae4 100644
--- a/HyPlayer.NeteaseApi/Bases/ApiContractBases/RawApiContractBase.cs
+++ b/HyPlayer.NeteaseApi/Bases/RawApiContractBases/RawApiContractBase.cs
@@ -2,7 +2,7 @@
using System.Text;
using System.Text.Json;
-namespace HyPlayer.NeteaseApi.Bases.ApiContractBases;
+namespace HyPlayer.NeteaseApi.Bases.RawApiContractBases;
public abstract class RawApiContractBase :
ApiContractBase
diff --git a/HyPlayer.NeteaseApi/Bases/WeApiActualRequestBase.cs b/HyPlayer.NeteaseApi/Bases/WeApiContractBases/WeApiActualRequestBase.cs
similarity index 66%
rename from HyPlayer.NeteaseApi/Bases/WeApiActualRequestBase.cs
rename to HyPlayer.NeteaseApi/Bases/WeApiContractBases/WeApiActualRequestBase.cs
index 228e9b7..b01a806 100644
--- a/HyPlayer.NeteaseApi/Bases/WeApiActualRequestBase.cs
+++ b/HyPlayer.NeteaseApi/Bases/WeApiContractBases/WeApiActualRequestBase.cs
@@ -1,4 +1,5 @@
-using System.Text.Json.Serialization;
+using HyPlayer.NeteaseApi.Bases.ApiContractBases;
+using System.Text.Json.Serialization;
namespace HyPlayer.NeteaseApi.Bases;
diff --git a/HyPlayer.NeteaseApi/Bases/ApiContractBases/WeApiContractBase.cs b/HyPlayer.NeteaseApi/Bases/WeApiContractBases/WeApiContractBase.cs
similarity index 98%
rename from HyPlayer.NeteaseApi/Bases/ApiContractBases/WeApiContractBase.cs
rename to HyPlayer.NeteaseApi/Bases/WeApiContractBases/WeApiContractBase.cs
index 4e4c521..98ed46f 100644
--- a/HyPlayer.NeteaseApi/Bases/ApiContractBases/WeApiContractBase.cs
+++ b/HyPlayer.NeteaseApi/Bases/WeApiContractBases/WeApiContractBase.cs
@@ -1,4 +1,5 @@
-using HyPlayer.NeteaseApi.Extensions;
+using HyPlayer.NeteaseApi.Bases.EApiContractBases;
+using HyPlayer.NeteaseApi.Extensions;
using System.Numerics;
using System.Security.Cryptography;
using System.Text;
@@ -73,7 +74,7 @@ public override Task GenerateRequestMessageAsync)secretKey).Reverse().ToArray(), publicKey).ToHexStringLower();
var data = new Dictionary()
{
{ "params", paramsData },
diff --git a/HyPlayer.NeteaseApi/Extensions/NeteaseUtils.cs b/HyPlayer.NeteaseApi/Extensions/NeteaseUtils.cs
index 29866a6..69198f0 100644
--- a/HyPlayer.NeteaseApi/Extensions/NeteaseUtils.cs
+++ b/HyPlayer.NeteaseApi/Extensions/NeteaseUtils.cs
@@ -36,4 +36,17 @@ public static string GetCacheKey(string input)
var result = encryptor.TransformFinalBlock(buffer, 0, buffer.Length);
return Convert.ToBase64String(result);
}
+
+ public static string GetDeviceId(string? imei = null, string? mac = null, string? androidId = null, string? localId = null)
+ {
+ if (string.IsNullOrEmpty(imei)) imei = "null";
+ if (string.IsNullOrEmpty(mac)) imei = "02:00:00:00:00:00";
+ if (string.IsNullOrEmpty(androidId)) androidId = Guid.NewGuid().ToString("N").Substring(0, 16);
+ if (string.IsNullOrEmpty(localId)) localId = "null";
+
+ var input = $"{imei}\t{mac}\t{androidId}\t{localId}";
+ var bytes = Encoding.UTF8.GetBytes(input);
+ var base64 = Convert.ToBase64String(bytes);
+ return Uri.EscapeDataString(base64);
+ }
}
\ No newline at end of file
diff --git a/HyPlayer.NeteaseApi/HyPlayer.NeteaseApi.csproj b/HyPlayer.NeteaseApi/HyPlayer.NeteaseApi.csproj
index 8f3c35a..bfe8d95 100644
--- a/HyPlayer.NeteaseApi/HyPlayer.NeteaseApi.csproj
+++ b/HyPlayer.NeteaseApi/HyPlayer.NeteaseApi.csproj
@@ -17,7 +17,7 @@
-
+
@@ -30,10 +30,14 @@
+
+
+
+
diff --git a/HyPlayer.NeteaseApi/NeteaseCloudMusicApiHandler.cs b/HyPlayer.NeteaseApi/NeteaseCloudMusicApiHandler.cs
index 7dc6e86..b41c379 100644
--- a/HyPlayer.NeteaseApi/NeteaseCloudMusicApiHandler.cs
+++ b/HyPlayer.NeteaseApi/NeteaseCloudMusicApiHandler.cs
@@ -1,4 +1,5 @@
using HyPlayer.NeteaseApi.Bases;
+using HyPlayer.NeteaseApi.Bases.ApiContractBases;
using HyPlayer.NeteaseApi.Extensions;
using System.Net;
diff --git a/HyPlayer.NeteaseProvider.Tests/NeteaseApisTests.cs b/HyPlayer.NeteaseProvider.Tests/NeteaseApisTests.cs
index 80011a3..7a378c7 100644
--- a/HyPlayer.NeteaseProvider.Tests/NeteaseApisTests.cs
+++ b/HyPlayer.NeteaseProvider.Tests/NeteaseApisTests.cs
@@ -4,7 +4,6 @@
using HyPlayer.NeteaseApi.ApiContracts;
using HyPlayer.NeteaseApi.ApiContracts.Album;
using HyPlayer.NeteaseApi.ApiContracts.Artist;
-using HyPlayer.NeteaseApi.ApiContracts.Category;
using HyPlayer.NeteaseApi.ApiContracts.Cloud;
using HyPlayer.NeteaseApi.ApiContracts.Comment;
using HyPlayer.NeteaseApi.ApiContracts.DjChannel;
@@ -14,6 +13,7 @@
using HyPlayer.NeteaseApi.ApiContracts.Recommend;
using HyPlayer.NeteaseApi.ApiContracts.Song;
using HyPlayer.NeteaseApi.ApiContracts.User;
+using HyPlayer.NeteaseApi.ApiContracts.Utils;
using HyPlayer.NeteaseApi.ApiContracts.Video;
using HyPlayer.NeteaseApi.Bases;
using HyPlayer.NeteaseApi.Models;
diff --git a/HyPlayer.NeteaseProvider/NeteaseProvider.cs b/HyPlayer.NeteaseProvider/NeteaseProvider.cs
index 7371bb5..fe485bf 100644
--- a/HyPlayer.NeteaseProvider/NeteaseProvider.cs
+++ b/HyPlayer.NeteaseProvider/NeteaseProvider.cs
@@ -5,6 +5,7 @@
using HyPlayer.NeteaseApi.ApiContracts.Recommend;
using HyPlayer.NeteaseApi.ApiContracts.Song;
using HyPlayer.NeteaseApi.Bases;
+using HyPlayer.NeteaseApi.Bases.ApiContractBases;
using HyPlayer.NeteaseProvider.Constants;
using HyPlayer.NeteaseProvider.Mappers;
using HyPlayer.NeteaseProvider.Models;
diff --git a/global.json b/global.json
index f4fd385..a27a2b8 100644
--- a/global.json
+++ b/global.json
@@ -2,6 +2,6 @@
"sdk": {
"version": "9.0.0",
"rollForward": "latestMajor",
- "allowPrerelease": true
+ "allowPrerelease": false
}
}
\ No newline at end of file