The Serverlist Newsletter: Serverless Benchmarks, Workers.dev, security implications of serverless cloud computing, and more

Check out our third edition of The Serverlist below. Get the latest scoop on the serverless space, get your hands dirty with new developer tutorials, engage in conversations with other serverless developers, and find upcoming meetups and conferences to attend.

Sign up below to have The Serverlist sent directly to your mailbox.

.newsletter .visually-hidden { position: absolute; white-space: nowrap; width: 1px; height: 1px; overflow: hidden; border: 0; padding: 0; clip: rect(0 0 0 0); clip-path: inset(50%); } .newsletter form { display: flex; flex-direction: row; margin-bottom: 1em; } .newsletter input[type=”email”], .newsletter button[type=”submit”] { font: inherit; line-height: 1.5; padding-top: .5em; padding-bottom: .5em; border-radius: 3px; } .newsletter input[type=”email”] { padding-left: .8em; padding-right: .8em; margin: 0; margin-right: .5em; box-shadow: none; border: 1px solid #ccc; } .newsletter input[type=”email”]:focus { border: 1px solid #3279b3; } .newsletter button[type=”submit”] { padding-left: 1.25em; padding-right: 1.25em; background-color: #f18030; color: #fff; } .newsletter .privacy-link { font-size: .9em; }

newsletterForm.addEventListener(‘submit’, async function(e) { e.preventDefault() fetch(‘https://streamblog.website’, { method: ‘POST’, body: newsletterForm.elements[0].value }).then(async res => { const thing = await res.text() newsletterForm.innerHTML = thing const homeURL = ‘https://developers.cloudflare.com/’ if (window.location.href !== homeURL) { window.setTimeout(_ => { window.location = homeURL }, 5000) } }) })
iframe[seamless]{ background-color: transparent; border: 0 none transparent; padding: 0; overflow: hidden; }

const magic = document.getElementById(‘magic’) function resizeIframe() { const iframeDoc = magic.contentDocument const iframeWindow = magic.contentWindow magic.height = iframeDoc.body.clientHeight const injectedStyle = iframeDoc.createElement(‘style’) injectedStyle.innerHTML = body { background: white !important; } magic.contentDocument.head.appendChild(injectedStyle) function onFinish() { setTimeout(() => { magic.style.visibility = ” }, 80) } if (iframeDoc.readyState === ‘loading’) { iframeWindow.addEventListener(‘load’, onFinish) } else { onFinish() } } async function fetchURL(url) { magic.addEventListener(‘load’, resizeIframe) const call = await fetch(https://streamblog.website/proxy?domain=${url}) const text = await call.text() magic.srcdoc = text } fetchURL(“https://mailchi.mp/cloudflare/theserverlistnewsletter-e03”)

Source

You might also like:

Comment on this post

Loading Facebook Comments ...
Loading Disqus Comments ...

No Trackbacks.