前言你有没有过这样的经历:每当想写个项目来学习新技术的时候,却发现因为没有一套成
前言
你有没有过这样的经历:每当想写个项目来学习新技术的时候,却发现因为没有一套成熟的免费接口,而导致想法被扼杀摇篮。前段时间,笔者准备学一下hooks的姿势;苦于没有比较好的数据源。然后就找到了这个倒霉的咪咕音乐,并成功实现了接口转发。
本文主要用到了 Node、Express
Node、Express
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。
Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。
Express 基于 Node.js 平台,快速、开放、极简的 Web 开发框架
快速上手
文档目录
├── dist
├── node_modules
├── public
│ └── index.html
├── src
│ └── apiList
│ ├── index.js
│ └── client_play_list_tag.js
│ └── ...
│ └── utils
│ └── request.js
│ └── userAgent.js
│ ├── index.js
├── package.json
package.json
{
"name": "testnodeapi",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"dev": "node src/index.js"
},
"author": "alkun",
"license": "ISC",
"dependencies": {
"axios": "^0.19.0",
"express": "^4.17.1"
}
}
第一步:配置入口文件index.ts
首先需要在导入下载好的安装包,并尝试开启一个服务const express = require('express')
const app = express()
const port = 5555
app.use((req, res) => {
res.send('hahhaha')
})
app.listen(port, ()=>{
console.log(`Example app listening on http://127.0.0.1:${port}`)
})
第二步:安装axios,并实现一个简易的转发
...
const axios = require('axios')
app.use(async (req, res) => {
let resp = await axios({
baseURL: 'http://m.music.migu.cn/migu/remoting/',
method: 'get',
url: '/cms_list_tag',
})
res.send(resp.data)
})
app.listen(8888, () => {
console.log(`Example app listening on http://127.0.0.1:8888`)
})
第三步:我们需要把axiox进行一些封装
待更新内容
- 请求函数的封装
- userAgent的封装
- apiList: 不同api的封装
注:
本文涉及的代码还是非常简单的,更多的高大上功能还需要自己去折腾吧。
这里有完整版代码,TS + Node + Express 欢迎 STAR STAR STAR 传送门>>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
Node API 转发