feat: 为歌曲同步功能添加元数据记录和日志
在前后端添加日志记录和元数据传递,包括歌曲名称、艺术家和专辑信息
This commit is contained in:
@@ -12,18 +12,21 @@ export const qrLoginCheck = qrKey => get("/account/qrlogin-check", {qrKey});
|
||||
export const getAllPlaylist = data => get("/playlists", data);
|
||||
export const getPlaylistDetail = playlistId => get(`/playlists/netease/${playlistId}/songs`);
|
||||
export const getJobDetail = jobId => get(`/sync-jobs/${jobId}`);
|
||||
export const createSyncSongFromUrlJob = (url, songId = "") => {
|
||||
export const createSyncSongFromUrlJob = (url, songId = "", meta = {}) => {
|
||||
return post("/sync-jobs", {
|
||||
"jobType": "SyncSongFromUrl",
|
||||
"urlJob": {
|
||||
"url": url,
|
||||
"meta": {
|
||||
"songId": songId
|
||||
"songId": songId,
|
||||
"songName": meta.songName || "",
|
||||
"artist": meta.artist || "",
|
||||
"album": meta.album || ""
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
export const createDownloadSongFromUrlJob = (url, songId = "") => {
|
||||
export const createDownloadSongFromUrlJob = (url, songId = "", meta = {}) => {
|
||||
return post("/sync-jobs", {
|
||||
"jobType": "DownloadSongFromUrl",
|
||||
"urlJob": {
|
||||
|
||||
@@ -184,10 +184,18 @@ export default {
|
||||
}
|
||||
return "";
|
||||
},
|
||||
async uploadToCloud(pageUrl) {
|
||||
async uploadToCloud(item) {
|
||||
const pageUrl = this.getSourceUrl(item);
|
||||
const meta = {
|
||||
songName: item.songName || "",
|
||||
artist: item.artist || "",
|
||||
album: item.album || ""
|
||||
};
|
||||
console.log(`[SearchResultListForMobile] uploadToCloud: pageUrl=${pageUrl}, meta=${JSON.stringify(meta)}`);
|
||||
const ret = await createSyncSongFromUrlJob(
|
||||
pageUrl,
|
||||
this.suggestMatchSongId
|
||||
this.suggestMatchSongId,
|
||||
meta
|
||||
);
|
||||
console.log(ret);
|
||||
|
||||
@@ -232,7 +240,7 @@ export default {
|
||||
console.log(currentSong);
|
||||
switch (actionItem.action) {
|
||||
case ActionUpload:
|
||||
this.uploadToCloud(pageUrl);
|
||||
this.uploadToCloud(currentSong);
|
||||
break;
|
||||
case ActionDownloadToLocalService:
|
||||
this.downloadToLocalService(pageUrl);
|
||||
|
||||
@@ -295,9 +295,16 @@ export default {
|
||||
},
|
||||
async uploadToCloud(row) {
|
||||
const pageUrl = this.getSourceUrl(row);
|
||||
const meta = {
|
||||
songName: row.songName || "",
|
||||
artist: row.artist || "",
|
||||
album: row.album || ""
|
||||
};
|
||||
logger.info(`[SearchResultTable] uploadToCloud: pageUrl=${pageUrl}, meta=${JSON.stringify(meta)}`);
|
||||
const ret = await createSyncSongFromUrlJob(
|
||||
pageUrl,
|
||||
this.suggestMatchSongId
|
||||
this.suggestMatchSongId,
|
||||
meta
|
||||
);
|
||||
console.log(ret);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user