教你如何用Node实现API的转发(某音乐)

时间:2021-05-18

前言

你有没有过这样的经历:每当想写个项目来学习新技术的时候,却发现因为没有一套成熟的免费接口,而导致想法被扼杀摇篮。前段时间,笔者准备学一下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 = 5555app.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 传送门>>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章