从卡壳到豁然开朗:我如何用 Cloudflare Workers 拯救我的网易云解析工具

从卡壳到豁然开朗:我如何用 Cloudflare Workers 拯救我的网易云解析工具

你有没有遇到过这种情况:

前端页面写好了,功能测试也通过了,用户体验也 OK……结果,一上线就傻眼了——接口调不了。

没错,我就遇到了这种“前端过关、后端失联”的大麻烦。尤其是在我开发网易云音乐解析工具的时候(附上工具地址:网易云解析工具),一切本地都跑得顺风顺水,直到我试图让它上线……


问题来了:我没有服务器

是的,你没看错。我连一台最基本的云服务器都没有。

这意味着什么?意味着我写好的 Node.js(Express)接口服务,根本没办法部署上线。Netlify 可以托管我的前端页面,界面加载得很漂亮,但它不支持后端服务。而我要解析网易云音乐的信息,就必须通过后端代理第三方 API,否则就会被 CORS(跨域)挡在门外。

原本美滋滋以为把前端上线了就大功告成,结果才发现后端根本没地方放——工具上线了个寂寞!


寻找出路:没有服务器就不能上线后端?

我开始四处搜索“免费部署 Node 接口服务”的解决方案。

  • Render?要绑信用卡。
  • Railway?免费额度太小。
  • Cyclic?试了下也不太稳定。

一番折腾之后,我几乎要放弃了。“难道没有虚拟服务器就真的不能做点有趣的事了吗?”

就在这时,我把这个问题抛给了 ChatGPT。


一束光照进来:Cloudflare Workers!

ChatGPT 甩出一个关键词:

Cloudflare Workers

我当时脑袋一懵:Cloudflare 不是做 CDN 和域名的吗?还可以写后端逻辑?

仔细一看,才知道原来 Cloudflare Workers 提供了一种“无服务器”的方式,可以直接写 JS/TS 脚本来响应 HTTP 请求,就像一个小型 Serverless 函数一样。而且——永久免费,不用绑卡,部署飞快,全球 CDN!

说实话,我一开始是将信将疑的。但既然都被逼到绝路了,为什么不试一试?


起死回生:把接口搬到 Workers 上

我把原本写在 Express 的那段代码迁移到了 Cloudflare Workers 中。

处理 POST 请求、读取 JSON、转发到网易云解析接口、加上 CORS 头部、设置只允许我前端页面的域名(https://yunparse.netlify.app)可以访问……整套流程都用 JavaScript 实现了。

代码部署之后,我敲下了那一行熟悉的前端请求:

1
2
3
4
5
fetch("https://proxy-server.******.workers.dev/music", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ url: "音乐链接", level: "标准", type: "json" }),
});

我按下回车,看见了那久违的 JSON 响应!

接口终于跑通了!前端页面终于能“真正地工作”了!


豁然开朗:原来后端也可以不用服务器

你无法想象我当时有多兴奋 —— Cloudflare Workers 完全拯救了我这个无后端资源的开发者。

以前我以为要做全栈开发就必须租云服务器,现在才知道,Serverless 真的可以成为轻量级个人项目的理想方案。

这次经历让我意识到,开发者不一定需要拥有一切资源,关键是 ——
你要知道哪里有门,哪里是出路。


结语:写给和我一样挣扎的你

如果你和我一样,也曾因为“没有服务器”而被卡住项目;
如果你也想上线自己的工具或小服务但苦于资源有限;

那么不妨试试 Cloudflare Workers

它不会解决你所有问题,但它可以点亮你前行的一小步。
而这一小步,很可能就是你项目从“本地跑得飞起”“线上人人可用”的转折点。