当前位置:网站首页>You deserve this high-value open-source third-party Netease cloud music player
You deserve this high-value open-source third-party Netease cloud music player
2022-07-06 07:05:00 【Xiaolin on the corner】
brief introduction
My main song listening software is Netease cloud music , But it has many fancy functions , For example, radio 、 live broadcast 、 friend 、 Podcast 、 Yuncun, etc , To be honest, I don't need any of these , Basically can't use , Most of the time, I only use it as a local player , Because it is a commercial software after all , You need to make money , So I can understand , relatively speaking , The client on the computer will be simpler , The web version is the purest , But the appearance is average ( Everyone's aesthetics may be different , This is just a personal point of view ~).
So is there a simple and pure , What about Netease cloud music player with high appearance , The answer is yes , It is :YesPlayMusic, An open source third-party implementation .
Project address :https://github.com/qier222/YesPlayMusic.
This project currently has 18.1k individual star, Quite a lot , Project based on Vue.js Family bucket development , It's a Web project , But by Electron Support packaging into macOS、Windows、Linux The clients of the three platforms are used .
Of course, the foundation of this project is another open source project :https://github.com/Binaryify/NeteaseCloudMusicApi, seeing the name of a thing one thinks of its function , It's Netease cloud music api, This is also a third-party project , Support all official interfaces , Use nodejs Development , be based on express frame , The request library uses axios, The principle is Cross Site Request Forgery (CSRF), By forging request headers , Call the official API, Simply speaking , It is because the domain name of our website is different from that of Netease cloud music , If you directly request the official interface of Netease cloud music , Netease cloud music server and browser do not allow us to do this for security , So we need a middleman who will not be restricted , That is, back-end services , Then our website requests the interface of this service , Bring certified cookie, This service uses cookie, And forge some request headers , The purpose is to make Netease cloud music official server think it is a browser , In this way, it can help us tune the official interface of Netease cloud music , Then the service is set to allow cross domain requests , Then our website can obtain the official data of Netease cloud music by requesting this intermediary .
function & Interface
First, let's take a look at its basic functions and interface .
Sign in

Support code scanning 、 Email login and mobile number login , Authentication code login and third-party login are not supported , But it's enough .
If you don't want to log in , Search your user name directly , You can also listen to your song list , It's just that some private data can't be seen :

home page
The columns on the home page are :by Apple Music、 Recommended song list 、For You( Daily recommendation )、 Recommend artists 、 Xinzhuan Express 、 Ranking List .
by Apple Music It is a column with dead data :

For You Daily recommendation , Login is required to use .



Discovery page
Click to view some columns on the home page and jump to the discovery page , Of course, you can also directly click on the top tab Switch to the discovery page , The discovery page is mainly to view the recommended song list 、 Ranking List 、 Search song list by category :

Music library
The music library needs to be used after logging in , That is, your personal space , You can check your favorite songs 、 A collection of songs 、 Album 、 artist 、MV、 Cloud disk and song ranking :

Search for
Search results include : artist 、 Album 、 song 、 Videos and song lists :

Details of the song list
Click a song list or album to jump to the song list details page , You can view the introduction on the details page 、 Song list all songs , Of course, it can also be played :

Play
Finally, the playback function , A playback bar will be permanently displayed at the bottom , Show the currently playing song , You can also control playback 、 Cut song :

Click on the bottom bar to open a full screen playback interface , You can see the lyrics :

Comment function
Listening to songs and reading comments has become a habit , Comments were also a feature of Netease cloud music at first , Unfortunately, this project does not support the function of viewing comments , The author also made it clear that he would not support :

Because it's open source , So the author does not support , You can support yourself , So I fork Its warehouse , It took a day to add a review 、 publish 、 Reply and like function .
The entry is in the bottom playback bar :

After clicking, the comment list will be displayed in full screen :

Support sorting in two dimensions of heat and time , It also supports viewing floor replies , You can comment on the song , You can also click on a floor to reply , But now there is a small problem , Comments or likes will not appear immediately , Need to wait for a while ( Two minutes ) Refresh the list to display , The reason is because api The service adds cache processing :

In order not to be blocked by the official server , I haven't removed or modified the cache time .
Use
If you see here, you've already moved , Then you can start using , First of all, if you don't want to toss , Then you can use it directly online , You can directly access the default online address provided by this project without the comment function :https://music.qier222.com/. If you need the comment function, you can use the address I modified and deployed :https://music.lxqnsys.com/.
Of course , At the same time, I also packed the client installation package , If you like to use it through the client, you can download it here https://github.com/wanglin2/YesPlayMusic.
The project itself supports multiple deployment methods , Deployed to Vercel(Vercel It is a zero configuration static resource and serverless Cloud Computing (serverless) Deployment platform )、 Deploy to your own server 、Docker Deployment, etc. , Here's the first one , Because it's not only free 、 Simple 、 And you can generate your own address , Don't worry about the invalidation of using other people's addresses , The stupid tutorial is as follows :
1. If you don't GitHub account number , Then register first .
2. open Vercel Website , Use github To login :

3. Deploy Netease cloud API
open NeteaseCloudMusicApi Project warehouse , Click on the 【Fork】 Button :

This will copy the project to your name :

Then open the Vercel Website , Click on the 【New Project】 Button to create a new project :

Then find you in the list of items on the left fork Of NeteaseCloudMusicApi project , If there are too many items to find, you can also search directly :

Click on 【Import】 Button import , Then the configuration can also be changed , Just click 【Deply】 Button to deploy :

Wait for deployment to complete , Click the preview area on the left , Will open the project , Copy the address of the newly opened page :


4. Deploy YesPlayMusic project
The interface service is deployed , Then you can deploy YesPlayMusic Project , The steps and deployment interfaces are the same , however Fork After that, you need :
Click the 【Add File】, choice 【Create new file】, Input 【vercel.json】, Copy and paste the following contents into the file , And will https://your-netease-api.example.com Replace with the Netease cloud you just deployed API The address of :
{
"rewrites": [
{
"source": "/api/:match*",
"destination": "https://your-netease-api.example.com/:match*"
}
]
}
Next open Vercel, The steps are the same as before , The difference is that the last step is to modify the configuration :
Click on 【Environment Variables】, Fill in Name by VUE_APP_NETEASE_API_URL,Value by /api, Click on 【Add】. Finally, click 【Deploy】 You can deploy to Vercel 了 .
The default generated domain name is Vercel Subdomain https://xxx.vercel.app, If you have your own domain name , Then it can also be bound to your own , On the project details page, click 【Setting】 Button :

Then click on the left 【Domains】 Button , Enter the domain name you want to bind on the right , Click on 【Add】:

Next, just go to the service provider where you buy the domain name and configure it CNAME Just map :


go back to Vercel page , It will automatically detect whether the mapping is successful , Finally, wait for the certificate generation to complete , You can access it through our own domain name :


This concludes the article ~
边栏推荐
- 简单描述 MySQL 中,索引,主键,唯一索引,联合索引 的区别,对数据库的性能有什么影响(从读写两方面)
- Oracle数据库11gr2使用tde透明数据加密报错ora28353,如果运行关闭wallet会报错ora28365,运行打开wallet就报错ora28353无法打开wallet
- 开源的网易云音乐API项目都是怎么实现的?
- Upgraded wechat tool applet source code for mobile phone detection - supports a variety of main traffic modes
- Hydra common commands
- 同事上了个厕所,我帮产品妹子轻松完成BI数据产品顺便得到奶茶奖励
- L'auteur est mort? Ai utilise l'art pour conquérir l'humanité
- [hot100] 739. Température quotidienne
- TS基础篇
- 3. Business and load balancing of high architecture
猜你喜欢

AI on the cloud makes earth science research easier

前缀和数组系列

这个高颜值的开源第三方网易云音乐播放器你值得拥有

RichView TRVStyle 模板样式的设置与使用

Reflex WMS medium level series 3: display shipped replaceable groups

18.多级页表与快表
![[advanced software testing step 1] basic knowledge of automated testing](/img/3d/f83f792e24efc39f00c0dc33936ce8.png)
[advanced software testing step 1] basic knowledge of automated testing

leetcode6109. 知道秘密的人数(中等,周赛)

The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower

UWA Pipeline 2.2.1 版本更新说明
随机推荐
Supporting title of the book from 0 to 1: ctfer's growth road (Zhou Geng)
What does UDP attack mean? UDP attack prevention measures
UDP攻击是什么意思?UDP攻击防范措施
Compile, connect -- notes-2
漏了监控:Zabbix对Eureka instance状态监控
MPLS experiment
RichView TRVStyle 模板样式的设置与使用
简单描述 MySQL 中,索引,主键,唯一索引,联合索引 的区别,对数据库的性能有什么影响(从读写两方面)
Explain in detail the functions and underlying implementation logic of the groups sets statement in SQL
BUU的MISC(不定时更新)
Embed UE4 program into QT interface display
Latex文字加颜色的三种办法
19.段页结合的实际内存管理
Misc of BUU (update from time to time)
Basic commands of MySQL
leetcode1020. Number of enclaves (medium)
前缀和数组系列
Practical guidance for interface automation testing (Part I): what preparations should be made for interface automation
Huawei equipment configuration ospf-bgp linkage
UniPro甘特图“初体验”:关注细节背后的多场景探索