|
本帖最后由 52Fancy 于 2024-5-2 11:06 编辑
[ol]export default { async fetch(request, env) { if (request.method == 'GET') { try { const code = request.url.split('/').pop(); if (code){ const value = await env.file.get(code) if (value == null) { return new Response("Value not found", {status: 404}) } return new Response(value) }else{ return new Response('Usage: curl -k -F "file=@文件" ' + request.url.slice(0, -1)) } }catch (e){ return new Response(e.message, {status: 500}) } } if (request.method == 'POST') { try { const formData = await request.formData() const file = formData.get('file') if (file){ const fileName = getName() await env.file.put(fileName, file.stream(), {expirationTtl: 300}) return new Response('"link":"' + request.url + fileName + '"' ) }else{ return new Response('Usage: curl -k -F "file=@文件" ' + request.url.slice(0, -1)) } }catch (e){ return new Response(e.message, {status: 500}) } } }}// 生成一个唯一的文件名function getName() { let randomString = ''; const alphabet = 'abcdefghijklmnopqrstuvwxyz' for (let i = 0; i 复制代码
新建Cloudflare Workers 和 Cloudflare KV
在Cloudflare Workers ->设置 ->变量 ->KV 命名空间绑定 ->添加绑定 ->变量名称填写file ->KV 命名空间选择刚才新建的KV ->部署
把index.js代码复制粘贴到Workers部署
[ol]Usage: curl -k -F "file=@文件" 你的Workers域名[/ol]复制代码
cloudflare真是个大善人,用wokres和kv来创建一个临时的文件上传服务器,虽然有限制,但是白女票还是很香的。
详情请看
https://github.com/52fancy/NetInstallAlpine |
|