This repository has been archived by the owner on Apr 16, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 15.8k
[建议] 添加缓存机制和 eslint #77
Labels
Comments
忘了说了 很感谢作者 辛苦了qwq |
Closed
还有一个问题是缓存时间不宜设置太久 或者也可以在获取音频URL接口的时候请求参数带上时间戳 |
@u3u |
按照楼主的建议做了代理IP和缓存机制,现在的问题是第一次请求数据有时候需要等待很长时间,不知道楼主有没有这种情况,想问下有什么好的解决方法吗? |
缓存的话有什么推荐写法吗 |
我是这么写的 在获取到数据之后通过当前 [请求地址 + 请求参数] 作为缓存的 |
@SlowSoulWen |
突然发现 IP 并没有永久拉黑 不过至少也有一周以上的时间了 |
@u3u |
@Binaryify |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
之前因为太年轻频繁调用接口导致服务器 IP 被网易云永久拉黑
不光接口地址 只要是
music.163.com
域的资源 访问均不返回任何数据 直到超时目前只能靠几个代理 IP 苟活了 每次请求随机拿一个代理 并加上了缓存机制 通过配置文件配置缓存时间
缓存是根据 [接口的地址 + 请求参数保存的] 也就是短时间内请求相同的接口优先读取缓存中的数据
这样能减少访问网易云接口的次数 并且还能提高响应速度 有效防止 IP 被封
为了让请求更像真实用户访问而不是机器 建议
userAgent
请求头也随机变化目前收集的各个终端的 UA
不直接提 PR 的原因是当时部署的时候偷懒直接下载的 zip 没有 fork
其次一个原因是我是我还不怎么会 Node 只写过一些简单的爬虫脚本
我目前用的是 node-cache 仅仅是内存缓存 重启后缓存就丢失了
还有一个是我有代码强迫症 没有 eslint 看着很不舒服
我本地代码全部使用标准规范配置 eslint-config-standard 修复了 冲突可能比较多 (,,•́ . •̀,,)
The text was updated successfully, but these errors were encountered: