mirror of
https://gitlab.com/Binaryify/neteasecloudmusicapi.git
synced 2025-07-03 13:22:10 +08:00
make banner api more useful
This commit is contained in:
parent
ebcf1f192b
commit
f454beb902
@ -1,24 +1,30 @@
|
||||
const express = require("express");
|
||||
const router = express();
|
||||
const { createWebAPIRequest } = require("../util/util");
|
||||
const request = require("request");
|
||||
|
||||
router.get("/", (req, res) => {
|
||||
const cookie = req.get("Cookie") ? req.get("Cookie") : "";
|
||||
const data = {
|
||||
timeStamp: 0 + new Date(),
|
||||
csrf_token: ""
|
||||
const options = {
|
||||
url: "http://music.163.com/discover",
|
||||
method: "GET",
|
||||
headers: {
|
||||
Referer: "http://music.163.com",
|
||||
"User-Agent":
|
||||
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3380.0 Safari/537.36"
|
||||
}
|
||||
};
|
||||
createWebAPIRequest(
|
||||
"music.163.com",
|
||||
"/api/v2/banner/get",
|
||||
"POST",
|
||||
data,
|
||||
cookie,
|
||||
music_req => {
|
||||
res.send(music_req);
|
||||
},
|
||||
err => res.status(502).send("fetch error")
|
||||
);
|
||||
request(options, (error, response, body) => {
|
||||
if (error) {
|
||||
res.status(502).send("fetch error");
|
||||
} else {
|
||||
try {
|
||||
const pattern = /<script[^>]*>\s*window\.Gbanners\s*=\s*([^;]+?);\s*<\/script>/g;
|
||||
const banners = pattern.exec(body)[1];
|
||||
res.send(JSON.stringify(eval(banners)));
|
||||
} catch (error) {
|
||||
res.status(502).send("fetch error");
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
|
Loading…
x
Reference in New Issue
Block a user