|  | @@ -333,40 +333,46 @@ app.options('/ncm/url', function (req, res) {
 | 
	
		
			
				|  |  |      res.end()
 | 
	
		
			
				|  |  |  })
 | 
	
		
			
				|  |  |  app.post("/ncm/url", function (req, res) {
 | 
	
		
			
				|  |  | -    if (req.body.id) {
 | 
	
		
			
				|  |  | -        let id = req.body.id
 | 
	
		
			
				|  |  | -        fetch(ncmAPIUrl + "/song/download/url/v1?id=" + id + "&level=hires", {
 | 
	
		
			
				|  |  | -            headers: {
 | 
	
		
			
				|  |  | -                Cookie: "MUSIC_U=0087F9D8E102A1C1661EBE1792412F3351DA64D1BD3D862BA77E45E9024524725F3A1983345D9B5A4014C725D19C069DD71081F6FE3659F9E1FD412DC427FB809FAF7789AEEA10E9DE6F06C58D1959BA209D2A83C3FA753261036C4CFD0D143B6C7748B8A6D2DD5C2E96E75D1E847E4AAE035CB2C86B175D9AFC6A164C522ED76E24AE654740AB6BAF5B29597F7E3B0158B2EC1C37F2688279871873FA7ADAEF8280A059E84C4BBFB9E4F225F9A2065DF652247D5496587A7B1E3D35DB0CD3F825C06FE5BFE5CFEF1770847099704360504B73C9B396E37CECE4F9DDEE6001588C3C4F5B2861D9ADF339FC47DD480858CA800620785EA032215B63B81025304DB3331F384793FF8EE681247E34C7931176F2F618B66C122F0602F1EA15F963E422DEC79C257F3577A197BECE71E316C751C3B9F5F3CD07BFDC0270A287A1BB6576"
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -        }).then(async result => {
 | 
	
		
			
				|  |  | -            let result_json = await result.json()
 | 
	
		
			
				|  |  | -            if (result_json.data.url !== null) {
 | 
	
		
			
				|  |  | -                let infos = await (await fetch(ncmAPIUrl + "/song/detail?ids=" + id)).json();
 | 
	
		
			
				|  |  | -                req.body.file = "data:audio/flac;base64," + Buffer.from(await (await fetch(result_json.data.url)).arrayBuffer()).toString("base64")
 | 
	
		
			
				|  |  | -                req.body.name = infos.songs[0].name;
 | 
	
		
			
				|  |  | -                req.body.albumName = infos.songs[0].al.name
 | 
	
		
			
				|  |  | -                req.body.albumCover = infos.songs[0].al.picUrl
 | 
	
		
			
				|  |  | -                req.body.link = result_json.data.url
 | 
	
		
			
				|  |  | -                req.body.artist = infos.songs[0].ar[0].name
 | 
	
		
			
				|  |  | -                /// Complete
 | 
	
		
			
				|  |  | +    if (req.body.id && req.body.kind) {
 | 
	
		
			
				|  |  | +        try{
 | 
	
		
			
				|  |  | +            let id = req.body.id
 | 
	
		
			
				|  |  | +            fetch(ncmAPIUrl + "/song/download/url/v1?id=" + id + "&level=hires", {
 | 
	
		
			
				|  |  | +                headers: {
 | 
	
		
			
				|  |  | +                    Cookie: "MUSIC_U=0087F9D8E102A1C1661EBE1792412F3351DA64D1BD3D862BA77E45E9024524725F3A1983345D9B5A4014C725D19C069DD71081F6FE3659F9E1FD412DC427FB809FAF7789AEEA10E9DE6F06C58D1959BA209D2A83C3FA753261036C4CFD0D143B6C7748B8A6D2DD5C2E96E75D1E847E4AAE035CB2C86B175D9AFC6A164C522ED76E24AE654740AB6BAF5B29597F7E3B0158B2EC1C37F2688279871873FA7ADAEF8280A059E84C4BBFB9E4F225F9A2065DF652247D5496587A7B1E3D35DB0CD3F825C06FE5BFE5CFEF1770847099704360504B73C9B396E37CECE4F9DDEE6001588C3C4F5B2861D9ADF339FC47DD480858CA800620785EA032215B63B81025304DB3331F384793FF8EE681247E34C7931176F2F618B66C122F0602F1EA15F963E422DEC79C257F3577A197BECE71E316C751C3B9F5F3CD07BFDC0270A287A1BB6576"
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +            }).then(async result => {
 | 
	
		
			
				|  |  | +                let result_json = await result.json()
 | 
	
		
			
				|  |  | +                if (result_json.data.url !== null) {
 | 
	
		
			
				|  |  | +                    let infos = await (await fetch(ncmAPIUrl + "/song/detail?ids=" + id)).json();
 | 
	
		
			
				|  |  | +                    req.body.file = "data:audio/flac;base64," + Buffer.from(await (await fetch(result_json.data.url)).arrayBuffer()).toString("base64")
 | 
	
		
			
				|  |  | +                    req.body.name = infos.songs[0].name;
 | 
	
		
			
				|  |  | +                    req.body.albumName = infos.songs[0].al.name
 | 
	
		
			
				|  |  | +                    req.body.albumCover = infos.songs[0].al.picUrl
 | 
	
		
			
				|  |  | +                    req.body.link = result_json.data.url
 | 
	
		
			
				|  |  | +                    req.body.artist = infos.songs[0].ar[0].name
 | 
	
		
			
				|  |  | +                    /// Complete
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                SubmitWrapper(req, res)
 | 
	
		
			
				|  |  | +                    SubmitWrapper(req, res)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            } else {
 | 
	
		
			
				|  |  | +                } else {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                res.status(404).header("Access-Control-Allow-Origin", "*").send("未找到")
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | +                    res.status(404).header("Access-Control-Allow-Origin", "*").send("未找到")
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            })
 | 
	
		
			
				|  |  | +        }catch(err) {
 | 
	
		
			
				|  |  | +            res.status(500).header("Access-Control-Allow-Origin", "*");
 | 
	
		
			
				|  |  | +            console.log(err)
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        })
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      } else {
 | 
	
		
			
				|  |  |          res.contentType("application/json");
 | 
	
		
			
				|  |  |          res.header("Access-Control-Allow-Origin", "*");
 | 
	
		
			
				|  |  |          res.header("Access-Control-Allow-Headers", "Content-Type");
 | 
	
		
			
				|  |  | -        res.end("{}")
 | 
	
		
			
				|  |  | +        res.end("傻逼。")
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  })
 | 
	
		
			
				|  |  |  
 |