Another way to implement spencerwooo/bannero API service
Just for seeking a new free approach to host an redirect server
Powered by Cloudflare Worker®
Workers Free plan Includes 100,000 total requests per day
I think this simple code do not need the help of wrangler CLI tool and webpack
Only 3 steps:
- Goto the Cloudflare Worker® DashBoard
- Create a new script with the following code
- Add a route and deploy it
addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request))
})
const handleRequest = async request => {
let list = await bannero(request)
let choice = crypto.getRandomValues(new Uint16Array(1))[0] % list.length
return Response.redirect(list[choice], 302)
}
const bannero = async () => {
let remote = await fetch('https://raw.githubusercontent.com/spencerwooo/bannero/master/src/bannero.txt', {cf: {cacheEverything: true}})
let text = await remote.text()
return text.split('\n').slice(0, -1)
}
The code will be deployed to hundreds of data centers around the world returning responses to your users faster than your origin ever could. You get all the speed and security of the world’s most peered CDN with all the power of JavaScript.
MIT