# HTTP Server

Published articles for HTTP Server.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Workshop Basel day two

DevFeed: [Workshop Basel day two](<https://devfeed.tech/articles/workshop-basel-day-two-18897.md>)

Original publisher: [Read original article](<https://daniel.haxx.se/blog/2026/07/15/workshop-basel-day-two/>)

Author: Daniel Stenberg

Published: 2026-07-15T20:07:14Z

Content type: article

Language: en

Sources: [Daniel Stenberg](<https://devfeed.tech/sources/daniel-stenberg.md>)

Topics: [HTTP](<https://devfeed.tech/topics/http.md>), [servers](<https://devfeed.tech/topics/servers.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Git](<https://devfeed.tech/topics/git.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [git](<https://devfeed.tech/tags/git.md>), [http](<https://devfeed.tech/tags/http.md>), [http-3](<https://devfeed.tech/tags/http-3.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [http-workshop](<https://devfeed.tech/tags/http-workshop.md>), [measurement](<https://devfeed.tech/tags/measurement.md>), [network](<https://devfeed.tech/tags/network.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [performance](<https://devfeed.tech/tags/performance.md>), [quic](<https://devfeed.tech/tags/quic.md>), [tests](<https://devfeed.tech/tags/tests.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

A report from the second day of a Basel workshop covering AI's influence on HTTP implementation, HTTP/2 measurements from large-scale web crawls, HTTP/1.1 behavior testing, request-smuggling tests, server performance measurement, and efforts to increase HTTP/3 and QUIC usage.

### Source excerpt

If you missed it. I already described day one. Caffeinated and ready, we all gathered in the same spacious room as yesterday, but seated in new places as "suggested" by our captain. Some of us even remembered to move over the name tags we wrote yesterday to our new seats. No time was wasted on ... Continue reading Workshop Basel day two ->

## Rust smoltcp as an alternative TCP/IP stack for ESP-IDF

DevFeed: [Rust smoltcp as an alternative TCP/IP stack for ESP-IDF](<https://devfeed.tech/articles/rust-smoltcp-as-an-alternative-tcp-ip-stack-for-esp-idf-13778.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2026/06/rust-smoltcp-network-stack-for-esp-idf/>)

Author: John Lee

Published: 2026-06-19T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP-IDF](<https://devfeed.tech/topics/esp-idf.md>), [Rust](<https://devfeed.tech/topics/rust.md>), [networking](<https://devfeed.tech/topics/networking.md>), [ESP32](<https://devfeed.tech/topics/esp32.md>), [ESP32-P4](<https://devfeed.tech/topics/esp32-p4.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [MQTT](<https://devfeed.tech/topics/mqtt.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [c](<https://devfeed.tech/tags/c.md>), [concurrency](<https://devfeed.tech/tags/concurrency.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp32-p4](<https://devfeed.tech/tags/esp32-p4.md>), [ethernet](<https://devfeed.tech/tags/ethernet.md>), [firmware](<https://devfeed.tech/tags/firmware.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [ipv4](<https://devfeed.tech/tags/ipv4.md>), [ipv6](<https://devfeed.tech/tags/ipv6.md>), [lwip](<https://devfeed.tech/tags/lwip.md>), [mqtt](<https://devfeed.tech/tags/mqtt.md>), [networking](<https://devfeed.tech/tags/networking.md>), [rust](<https://devfeed.tech/tags/rust.md>), [smoltcp](<https://devfeed.tech/tags/smoltcp.md>), [tcp-ip](<https://devfeed.tech/tags/tcp-ip.md>), [tls](<https://devfeed.tech/tags/tls.md>)

### AI overview

This article explains how to run the Rust smoltcp TCP/IP stack as an alternative IPv4/IPv6 data plane under ESP-IDF. It describes a GNU linker --wrap shim that preserves compatibility with ESP-IDF networking components such as esp_http_server, esp-tls and esp-mqtt, along with the single-task poll architecture, measured ESP32-P4 throughput, and known limitations.

### Source excerpt

A set of ESP-IDF components that run the Rust smoltcp stack as the IPv4/IPv6 data plane, while keeping esp_http_server, esp-tls and esp-mqtt working without source changes. This article explains the linker -wrap shim that makes it compatible, the single-task poll architecture, the throughput I measured on an ESP32-P4 (91.15 Mbit/s on a 100 Mbit link), and the limitations to be aware of.

## netlab 26.01: EVPN for VXLAN-over-IPv6, Netscaler

DevFeed: [netlab 26.01: EVPN for VXLAN-over-IPv6, Netscaler](<https://devfeed.tech/articles/netlab-26-01-evpn-for-vxlan-over-ipv6-netscaler-11313.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2026/01/netlab-26-01/>)

Published: 2026-01-13T06:19:00Z

Content type: release

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [releases](<https://devfeed.tech/topics/releases.md>), [evpn](<https://devfeed.tech/topics/evpn.md>), [VXLAN](<https://devfeed.tech/topics/vxlan.md>), [Ansible](<https://devfeed.tech/topics/ansible.md>), [Release notes](<https://devfeed.tech/topics/release-notes.md>), [API](<https://devfeed.tech/topics/api.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>)

Tags: [ansible](<https://devfeed.tech/tags/ansible.md>), [api](<https://devfeed.tech/tags/api.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [evpn](<https://devfeed.tech/tags/evpn.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [ipv6](<https://devfeed.tech/tags/ipv6.md>), [netlab](<https://devfeed.tech/tags/netlab.md>), [release](<https://devfeed.tech/tags/release.md>), [release-notes](<https://devfeed.tech/tags/release-notes.md>), [releases](<https://devfeed.tech/tags/releases.md>), [vxlan](<https://devfeed.tech/tags/vxlan.md>)

### AI overview

netlab Release 26.01 rewrites device configuration file generation, removes its use of Ansible Jinja2 functionality, and supports Ansible releases 12 and 13 for configuration deployment. It also adds EVPN for VXLAN-over-IPv6, the skip_config node attribute, a lightweight API HTTP server, and rudimentary Citrix Netscaler support.

### Source excerpt

I completely rewrote netlab's device configuration file generation during the New Year break. netlab Release 26.01 no longer uses Ansible Jinja2 functionality and works with Ansible releases 12/13, which are used solely for configuration deployment. I had to break a few eggs to get there; if you encounter any problems, please open an issue. Other new features include: EVPN for VXLAN-over-IPv6 The 'skip_config' node attribute that can be used to deploy partially-provisioned labs Lightweight netlab API HTTP server by Craig Johnson Rudimentary support for Citrix Netscaler by Seb d'Argoeuves You'll find more details (and goodies) in the release notes. Read more ...

## ESP-IDF Tutorials: Basic HTTP server

DevFeed: [ESP-IDF Tutorials: Basic HTTP server](<https://devfeed.tech/articles/esp-idf-tutorials-basic-http-server-13704.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2025/06/basic_http_server/>)

Author: John Lee

Published: 2025-06-26T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP-IDF](<https://devfeed.tech/topics/esp-idf.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [Espressif](<https://devfeed.tech/topics/espressif.md>), [servers](<https://devfeed.tech/topics/servers.md>), [HTML](<https://devfeed.tech/topics/html.md>), [CMake](<https://devfeed.tech/topics/cmake.md>), [browser](<https://devfeed.tech/topics/browser.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [blog](<https://devfeed.tech/tags/blog.md>), [browser](<https://devfeed.tech/tags/browser.md>), [cmake](<https://devfeed.tech/tags/cmake.md>), [devices](<https://devfeed.tech/tags/devices.md>), [esp](<https://devfeed.tech/tags/esp.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [espressif](<https://devfeed.tech/tags/espressif.md>), [html](<https://devfeed.tech/tags/html.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [practitioner](<https://devfeed.tech/tags/practitioner.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>)

### AI overview

This tutorial explains how to set up a basic HTTP server with ESP-IDF, create a URI route that serves an HTML page, and view that page in a web browser on Espressif devices.

### Source excerpt

This article shows how to create a simple HTTP server. It explains the functions you need and the setup required. After reading this, you should be able to create your own HTTP server on Espressif devices.

## ESP-IDF Tutorials: Soft-AP

DevFeed: [ESP-IDF Tutorials: Soft-AP](<https://devfeed.tech/articles/esp-idf-tutorials-soft-ap-13697.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2025/04/soft-ap-tutorial/>)

Author: John Lee

Published: 2025-04-18T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP-IDF](<https://devfeed.tech/topics/esp-idf.md>), [Espressif](<https://devfeed.tech/topics/espressif.md>), [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [networking](<https://devfeed.tech/topics/networking.md>), [configuration](<https://devfeed.tech/topics/configuration.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [bluetooth](<https://devfeed.tech/tags/bluetooth.md>), [bluetooth-le](<https://devfeed.tech/tags/bluetooth-le.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [connectivity](<https://devfeed.tech/tags/connectivity.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp32-c3](<https://devfeed.tech/tags/esp32-c3.md>), [espressif](<https://devfeed.tech/tags/espressif.md>), [framework](<https://devfeed.tech/tags/framework.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [networking](<https://devfeed.tech/tags/networking.md>), [security](<https://devfeed.tech/tags/security.md>), [soft-ap](<https://devfeed.tech/tags/soft-ap.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>), [wi-fi](<https://devfeed.tech/tags/wi-fi.md>)

### AI overview

This tutorial explains how to set up a Wi-Fi soft-AP with an Espressif module and ESP-IDF for provisioning. It covers project setup, Wi-Fi configuration, event handling, and verifying the connection with a smartphone, while noting that the simple technique is less secure than Unified Provisioning.

### Source excerpt

This tutorial guides you through setting up a soft-AP using an Espressif module and ESP-IDF. It covers the process of creating a project, configuring Wi-Fi, and handling connection events through event loops. Upon completion, you'll be able to establish a soft-AP and manage Wi-Fi connections. It is the first step to building more advanced networking applications.

## Multi-function USB Dongle based on ESP32-S3

DevFeed: [Multi-function USB Dongle based on ESP32-S3](<https://devfeed.tech/articles/multi-function-usb-dongle-based-on-esp32-s3-13927.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/multi-function-usb-dongle-based-on-esp32-s3/>)

Author: John Lee

Published: 2024-10-24T00:00:00Z

Content type: article

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP32-S3](<https://devfeed.tech/topics/esp32-s3.md>), [USB](<https://devfeed.tech/topics/usb.md>), [Data Management](<https://devfeed.tech/topics/data-management.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [dongle](<https://devfeed.tech/tags/dongle.md>), [esp32-s3](<https://devfeed.tech/tags/esp32-s3.md>), [espressif](<https://devfeed.tech/tags/espressif.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [usb](<https://devfeed.tech/tags/usb.md>)

### AI overview

The article presents a multi-function USB dongle based on the Espressif ESP32-S3 module. It addresses cumbersome workflows for transferring camera photos, printing files, and sharing videos, and describes a device combining a USB MSC wireless disk with a USB wireless network card and dual-function switching.

### Source excerpt

In modern digital life, we often encounter scenarios where data transfer is not flexible or efficient enough, especially when exporting camera photos, printing files, and sharing videos. In this article, we will have a closer look at the mentioned scenarios and propose a solution - Multi-function USB Dongle based on ESP32-S3.

## Ep. 5: Efficient Concurrency in Go: Managing GoRoutines and Load Shedding

DevFeed: [Ep. 5: Efficient Concurrency in Go: Managing GoRoutines and Load Shedding](<https://devfeed.tech/articles/ep-5-efficient-concurrency-in-go-managing-goroutines-and-load-shedding-22242.md>)

Original publisher: [Read original article](<https://www.ardanlabs.com/blog/2024/06/efficient-concurrency-in-go-managing-goroutines-and-load-shedding-ep-5.html>)

Published: 2024-06-11T00:00:00Z

Content type: tutorial

Language: en

Sources: [William Kennedy](<https://devfeed.tech/sources/william-kennedy.md>)

Topics: [Concurrency](<https://devfeed.tech/topics/concurrency.md>), [Go Language](<https://devfeed.tech/topics/go-language.md>), [Concurrent Programming](<https://devfeed.tech/topics/concurrent-programming.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [servers](<https://devfeed.tech/topics/servers.md>)

Tags: [best-practices](<https://devfeed.tech/tags/best-practices.md>), [concurrency](<https://devfeed.tech/tags/concurrency.md>), [go](<https://devfeed.tech/tags/go.md>), [goroutines](<https://devfeed.tech/tags/goroutines.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [kubernetes-clusters](<https://devfeed.tech/tags/kubernetes-clusters.md>), [load](<https://devfeed.tech/tags/load.md>), [managing-goroutines](<https://devfeed.tech/tags/managing-goroutines.md>), [networking](<https://devfeed.tech/tags/networking.md>), [programming](<https://devfeed.tech/tags/programming.md>), [server](<https://devfeed.tech/tags/server.md>)

### AI overview

This video tutorial explains how to manage goroutines in Go using parent-child relationships, clean shutdown APIs, and load shedding. It focuses on preventing orphaned goroutines, protecting data consistency during shutdowns, and gracefully handling HTTP server traffic.

### Source excerpt

Introduction: In this installment, Bill delves into the concept of load shedding in Go, explaining its importance in managing GoRoutines and ensuring clean shutdowns. How to manage GoRoutines using a parent-child relationship model to prevent orphan GoRoutines. The role of load shedding in maintaining clean and orderly shutdowns, particularly using the HTTP package in Go. Strategies for implementing GoRoutines in Go to handle concurrent tasks efficiently without risking data corruption during shutdowns.

## Exploiting HTTP/2 CONTINUATION frames for DoS attacks

DevFeed: [Exploiting HTTP/2 CONTINUATION frames for DoS attacks](<https://devfeed.tech/articles/exploiting-http-2-continuation-frames-for-dos-attacks-7912.md>)

Original publisher: [Read original article](<https://snyk.io/blog/exploiting-http-2-continuation-frames-dos-attacks/>)

Author: Vandana Verma Sehgal

Published: 2024-04-08T05:00:00Z

Content type: article

Language: en

Sources: [Blog RSS Feed | Snyk](<https://devfeed.tech/sources/blog-rss-feed-snyk.md>)

Topics: [HTTP](<https://devfeed.tech/topics/http.md>), [vulnerability](<https://devfeed.tech/topics/vulnerability.md>), [DDoS](<https://devfeed.tech/topics/ddos.md>), [servers](<https://devfeed.tech/topics/servers.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [Go Language](<https://devfeed.tech/topics/go-language.md>), [Node.js](<https://devfeed.tech/topics/node-js.md>)

Tags: [attacks](<https://devfeed.tech/tags/attacks.md>), [awareness](<https://devfeed.tech/tags/awareness.md>), [blog](<https://devfeed.tech/tags/blog.md>), [code-security](<https://devfeed.tech/tags/code-security.md>), [developer](<https://devfeed.tech/tags/developer.md>), [devops](<https://devfeed.tech/tags/devops.md>), [devrel](<https://devfeed.tech/tags/devrel.md>), [enablement](<https://devfeed.tech/tags/enablement.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [go](<https://devfeed.tech/tags/go.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [internet-traffic](<https://devfeed.tech/tags/internet-traffic.md>), [js](<https://devfeed.tech/tags/js.md>), [monitor](<https://devfeed.tech/tags/monitor.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [open-source-security](<https://devfeed.tech/tags/open-source-security.md>), [performance](<https://devfeed.tech/tags/performance.md>), [security](<https://devfeed.tech/tags/security.md>), [server](<https://devfeed.tech/tags/server.md>), [snyk-open-source](<https://devfeed.tech/tags/snyk-open-source.md>), [snyk-platform](<https://devfeed.tech/tags/snyk-platform.md>), [vulnerability](<https://devfeed.tech/tags/vulnerability.md>), [vulnerability-insights](<https://devfeed.tech/tags/vulnerability-insights.md>)

### AI overview

This article explains a vulnerability in HTTP/2 implementations that lets attackers flood a single stream with excessive CONTINUATION frames, potentially overwhelming or crashing web servers. It describes the affected ecosystem, including Node.js and Go, and recommends patching, rate limiting, traffic monitoring, and temporarily disabling HTTP/2 when no patch is available.

### Source excerpt

This post covers all the info you need on the new HTTP/2 CONTINUATION frames vulnerability, including the affected versions, its impact, mitigation steps, and how to protect your applications.

## Router 2.0 Common Runtime Router: The Road to Beta

DevFeed: [Router 2.0 Common Runtime Router: The Road to Beta](<https://devfeed.tech/articles/router-2-0-common-runtime-router-the-road-to-beta-26491.md>)

Original publisher: [Read original article](<https://www.heroku.com/blog/router-2dot0-the-road-to-beta/>)

Author: Elizabeth Cox

Published: 2023-10-30T22:00:00Z

Content type: article

Language: en

Sources: [Heroku](<https://devfeed.tech/sources/heroku.md>)

Topics: [Heroku](<https://devfeed.tech/topics/heroku.md>), [Routing (disambiguation)](<https://devfeed.tech/topics/routing.md>), [Erlang](<https://devfeed.tech/topics/erlang.md>), [servers](<https://devfeed.tech/topics/servers.md>), [Concurrency](<https://devfeed.tech/topics/concurrency.md>), [legacy](<https://devfeed.tech/topics/legacy.md>), [Scalability](<https://devfeed.tech/topics/scalability.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [concurrency](<https://devfeed.tech/tags/concurrency.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [erlang](<https://devfeed.tech/tags/erlang.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [legacy](<https://devfeed.tech/tags/legacy.md>), [modernization](<https://devfeed.tech/tags/modernization.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [release](<https://devfeed.tech/tags/release.md>), [router-2-0](<https://devfeed.tech/tags/router-2-0.md>), [routing](<https://devfeed.tech/tags/routing.md>), [scalability](<https://devfeed.tech/tags/scalability.md>)

### AI overview

Heroku describes the beta release of Router 2.0, a replacement for the existing Common Runtime router planned for 2024. The article explains the legacy router's Erlang-based architecture and the challenges that motivated a new implementation, including safer delivery of routing features and planned HTTP/2 support.

### Source excerpt

Last month, Heroku announced the beta release of Router 2.0, the new Common Runtime router! As part of our commitment to infrastructure modernization, Heroku is making upgrades to the Common Runtime routing layer. The beta release of Router 2.0 is an important step along this journey. We're excited to give you an inside look at [...] The post Router 2.0 Common Runtime Router: The Road to Beta appeared first on Heroku.

## Interfaces 101 : Extensible API Handlers Ep. 10

DevFeed: [Interfaces 101 : Extensible API Handlers Ep. 10](<https://devfeed.tech/articles/interfaces-101-extensible-api-handlers-ep-10-22222.md>)

Original publisher: [Read original article](<https://www.ardanlabs.com/blog/2023/04/interfaces-101-extensible-api-handlers-ep-10.html>)

Published: 2023-04-03T00:00:00Z

Content type: tutorial

Language: en

Sources: [William Kennedy](<https://devfeed.tech/sources/william-kennedy.md>)

Topics: [Go Language](<https://devfeed.tech/topics/go-language.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [Server](<https://devfeed.tech/topics/server.md>), [Logging](<https://devfeed.tech/topics/logging.md>), [interfaces](<https://devfeed.tech/topics/interfaces.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [go](<https://devfeed.tech/tags/go.md>), [golang](<https://devfeed.tech/tags/golang.md>), [handler](<https://devfeed.tech/tags/handler.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [interfaces](<https://devfeed.tech/tags/interfaces.md>), [logging](<https://devfeed.tech/tags/logging.md>), [middleware](<https://devfeed.tech/tags/middleware.md>), [request](<https://devfeed.tech/tags/request.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

A video tutorial demonstrates how to build an extensible HTTP API handler in Go. It covers defining a route and handler, designing composable middleware, and implementing logging middleware that measures request time.

### Source excerpt

Introduction In episode 9, Miki discussed how a command flag can be decoded into a user defined type with the Value interface. As a recap, the Value interface consists of two methods: one for serializing the underlying concrete type and one for deserializing a string into an object. To put this interface to the test, Miki wrote a command that had a flag to specify a network address. While implementing the Set method of the Value interface, Miki demonstrated how to add validation for your program's flags.

## Open Sourcing Intervene

DevFeed: [Open Sourcing Intervene](<https://devfeed.tech/articles/open-sourcing-intervene-2105.md>)

Original publisher: [Read original article](<https://developers.soundcloud.com/blog//open-sourcing-intervene>)

Published: 2020-05-05T00:00:00Z

Content type: article

Language: en

Sources: [SoundCloud Backstage Blog](<https://devfeed.tech/sources/soundcloud-backstage-blog.md>)

Topics: [Intervene](<https://devfeed.tech/topics/intervene.md>), [Mocking](<https://devfeed.tech/topics/mocking.md>), [TypeScript](<https://devfeed.tech/topics/typescript.md>), [BFF](<https://devfeed.tech/topics/bff.md>), [Web](<https://devfeed.tech/topics/web.md>), [Processes](<https://devfeed.tech/topics/processes.md>), [browser](<https://devfeed.tech/topics/browser.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [bff](<https://devfeed.tech/tags/bff.md>), [browser](<https://devfeed.tech/tags/browser.md>), [code](<https://devfeed.tech/tags/code.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [dev-tools](<https://devfeed.tech/tags/dev-tools.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [intervene](<https://devfeed.tech/tags/intervene.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [mocking](<https://devfeed.tech/tags/mocking.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [open](<https://devfeed.tech/tags/open.md>), [process](<https://devfeed.tech/tags/process.md>), [proxy](<https://devfeed.tech/tags/proxy.md>), [tools](<https://devfeed.tech/tags/tools.md>), [typescript](<https://devfeed.tech/tags/typescript.md>), [web](<https://devfeed.tech/tags/web.md>), [web-development](<https://devfeed.tech/tags/web-development.md>)

### AI overview

SoundCloud open-sources Intervene, a Node.js process that acts as a single-host proxy for altering requests and responses during frontend development. It supports endpoint overrides, TypeScript or JavaScript configuration, automatically trusted self-signed HTTPS certificates, and repository-shared mocks.

### Source excerpt

A little while back, the web team at SoundCloud got an urgent report that our upload page looked weird in the US. Web engineering is based...

## HTTP 555: User-Defined Resource Error

DevFeed: [HTTP 555: User-Defined Resource Error](<https://devfeed.tech/articles/http-555-user-defined-resource-error-19086.md>)

Original publisher: [Read original article](<https://httptoolkit.com/blog/new-http-status-code-555/>)

Author: HTTP Toolkit; Tim Perry

Published: 2020-03-27T13:30:00Z

Content type: article

Language: en

Sources: [HTTP Toolkit](<https://devfeed.tech/sources/http-toolkit.md>)

Topics: [HTTP](<https://devfeed.tech/topics/http.md>), [Protocol (disambiguation)](<https://devfeed.tech/topics/protocol.md>), [Serverless](<https://devfeed.tech/topics/serverless.md>)

Tags: [errors](<https://devfeed.tech/tags/errors.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [standards](<https://devfeed.tech/tags/standards.md>)

### AI overview

The article examines Oracle's proposed HTTP status code 555 for server-side errors caused by user-supplied resources in serverless systems. It explains HTTP status-code categories and emphasizes that the proposal is not standardized and should not be used in production.

### Source excerpt

Does the rise of serverless mean we need a new HTTP status code? The team at Oracle think so. They've submitted a draft specification to the HTTP Working Group, defining a new HTTP status code (initially suggesting 555) to be used for server-side errors caused by user-supplied resources. [Note: I'm going to use 555 to refer to the new proposed code everywhere here, but this is not standardized, even if it is standardized in future it will probably use a different code, and you 100% should not start building anything that uses this code for real anywhere. Nobody needs another 418 I'm A Teapot battle.] Anyway, let's talk about what this means, and whether it's a good idea. Status codes: a refresher First let's recap the background. Status codes are 3 digit codes, included in every response from an HTTP server, which summarize the result of a request. There's common examples you'll have heard of like 404 (the resource you requested could not be found) or 200 (your request was successful, and this response represents the result). There's then a long list of less common examples, like 302 (the resource you requested is a temporarily stored elsewhere, you should go there instead), 410 (the resource you requested was here, but now it's gone, and there's no new address available), or 100 (yes, please continue sending the rest of the request you're already sending). And many more. They're categorized into a few classes: 1XX: Information These are provisional responses, which typically don't fit into the simple HTTP request/response flow, and describe unusual behaviors like interim responses or switching the connection to a different protocol. 2XX: Success The request you asked for was successful in some way. Perhaps you're getting the resource you asked for (200), the server has accepted and started asynchronously processing your operation (202), or your request was successful but the server doesn't have any data about it for you (204). 3XX: Redirection Your request is valid

## Local Network Access via HTTP Server

DevFeed: [Local Network Access via HTTP Server](<https://devfeed.tech/articles/local-network-access-via-http-server-13904.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/local-network-access-via-http-server/>)

Author: John Lee

Published: 2018-10-13T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [HTTP](<https://devfeed.tech/topics/http.md>), [servers](<https://devfeed.tech/topics/servers.md>), [API](<https://devfeed.tech/topics/api.md>), [Networks](<https://devfeed.tech/topics/networks.md>), [Wi-Fi](<https://devfeed.tech/topics/wi-fi.md>), [Security](<https://devfeed.tech/topics/security.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [blog](<https://devfeed.tech/tags/blog.md>), [building-products](<https://devfeed.tech/tags/building-products.md>), [code](<https://devfeed.tech/tags/code.md>), [curl](<https://devfeed.tech/tags/curl.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [network](<https://devfeed.tech/tags/network.md>), [security](<https://devfeed.tech/tags/security.md>), [wi-fi](<https://devfeed.tech/tags/wi-fi.md>), [wifi](<https://devfeed.tech/tags/wifi.md>)

### AI overview

This tutorial explains how to let a smart device on a user's home network expose a /power HTTP URI. GET reports the device's current output state, while POST updates it. It also shows registering handlers, testing with cURL, using a phone app, and the security implications of relying on Wi-Fi protection.

### Source excerpt

So you have your smart device on your end-user's home network. Now you would want your user to access your device over the local network. That's what we will look at in this post. Let's say you are building a smart plug, and you want to toggle the power on or off on your plug. We will create a HTTP URI */power *on your device. - An HTTP GET on this URI will give us the current state of the output of the plug. - An HTTP POST on this URI will update the output state of the plug.

## How to pass variables to a Docker container when building a Node app

DevFeed: [How to pass variables to a Docker container when building a Node app](<https://devfeed.tech/articles/how-to-pass-variables-to-a-docker-container-when-building-a-node-app-20736.md>)

Original publisher: [Read original article](<https://blog.fedecarg.com/2016/11/05/how-to-pass-variables-to-a-docker-container-when-building-a-node-app/>)

Author: Federico

Published: 2016-11-05T21:42:00Z

Content type: tutorial

Language: en

Sources: [Federico Cargnelutti](<https://devfeed.tech/sources/federico-cargnelutti.md>)

Topics: [Dockerfile](<https://devfeed.tech/topics/dockerfile.md>), [Environment Variables](<https://devfeed.tech/topics/environment-variables.md>), [Docker Image](<https://devfeed.tech/topics/docker-image.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>)

Tags: [command-line](<https://devfeed.tech/tags/command-line.md>), [docker](<https://devfeed.tech/tags/docker.md>), [docker-image](<https://devfeed.tech/tags/docker-image.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [linux](<https://devfeed.tech/tags/linux.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [npm](<https://devfeed.tech/tags/npm.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [port](<https://devfeed.tech/tags/port.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

A tutorial on passing variables to a Dockerized Node application during image builds and container execution. It explains Dockerfile ENV and ARG instructions, command-line build arguments, shell-based use of NODE_ENV, and exposing a port to start an HTTP server.

### Source excerpt

Environment variables are declared with the ENV statement and are notated in the Dockerfile either with $VARIABLE_NAME or ${VARIABLE_NAME}. Passing variables at build-time The ENV instruction sets the environment variable to the value. The environment variables set using ENV will persist when a container is run from the resulting image. For example: The Dockerfile allows you to specify arguments [...]

## Weekly Programming Challenge #10

DevFeed: [Weekly Programming Challenge #10](<https://devfeed.tech/articles/weekly-programming-challenge-10-21092.md>)

Original publisher: [Read original article](<http://weblog.jamisbuck.org/2016/10/1/weekly-programming-challenge-10.html>)

Author: Jamis

Published: 2016-10-01T06:00:00Z

Content type: tutorial

Language: en

Sources: [Jamis Buck](<https://devfeed.tech/sources/jamis-buck.md>)

Topics: [Programming](<https://devfeed.tech/topics/programming.md>), [Network](<https://devfeed.tech/topics/network.md>), [Server](<https://devfeed.tech/topics/server.md>), [client](<https://devfeed.tech/topics/client.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [elixir](<https://devfeed.tech/tags/elixir.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [network](<https://devfeed.tech/tags/network.md>), [programming](<https://devfeed.tech/tags/programming.md>), [server](<https://devfeed.tech/tags/server.md>)

### AI overview

This article introduces a weekly programming challenge focused on socket programming. It asks readers to explore writing a simple client and server that exchange information over a network, after recapping submissions for the previous challenge on Bezier curves.

### Source excerpt

Socket programming -- 5-minute read

## Preparing a Web Front Server for DoS Attacks Using Cloudflare-Inspired Techniques

DevFeed: [Preparing a Web Front Server for DoS Attacks Using Cloudflare-Inspired Techniques](<https://devfeed.tech/articles/prepare-for-dos-like-cloudflare-do-27646.md>)

Original publisher: [Read original article](<https://gagor.pro/2016/02/prepare-for-dos-like-cloudflare-do/>)

Author: Tom

Published: 2016-02-05T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [DDoS](<https://devfeed.tech/topics/ddos.md>), [Cloudflare](<https://devfeed.tech/topics/cloudflare.md>), [conntrack](<https://devfeed.tech/topics/conntrack.md>), [Kernel](<https://devfeed.tech/topics/kernel.md>), [servers](<https://devfeed.tech/topics/servers.md>)

Tags: [cloudflare](<https://devfeed.tech/tags/cloudflare.md>), [conntrack](<https://devfeed.tech/tags/conntrack.md>), [ddos](<https://devfeed.tech/tags/ddos.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [kernel](<https://devfeed.tech/tags/kernel.md>), [performance](<https://devfeed.tech/tags/performance.md>), [security](<https://devfeed.tech/tags/security.md>)

### AI overview

This tutorial adapts general techniques from a presentation about Cloudflare's DoS protection for typical web front servers. It covers ACK/FIN/RST/X-mas floods, SYN floods, botnet attacks, conntrack, syncookies, rate limiting, IP blacklisting, and related kernel and network tuning.

### Source excerpt

I watched nice presentation about how Cloudflare protects itself against DoS. Most of us are not able to do that exactly like them but some of tips were general enough to be used on typical web front server. I took notes from this presentation and presented here. Thanks to Marek agreement I also reposted all examples (in easier to copy paste way). Howto prepare against ACK/FIN/RST/X-mas flood Use conntrack rule:

## Cat-DNS: a DNS server that resolves everything to cats

DevFeed: [Cat-DNS: a DNS server that resolves everything to cats](<https://devfeed.tech/articles/cat-dns-a-dns-server-that-resolves-everything-to-cats-35520.md>)

Original publisher: [Read original article](<https://meowni.ca/posts/go-cat-dns-go/>)

Author: Monica Dinculescu

Published: 2014-02-18T00:00:00Z

Content type: tutorial

Language: en

Sources: [Monica Dinculescu](<https://devfeed.tech/sources/monica-dinculescu.md>)

Topics: [HTTP](<https://devfeed.tech/topics/http.md>), [servers](<https://devfeed.tech/topics/servers.md>), [Internet](<https://devfeed.tech/topics/internet.md>), [Code](<https://devfeed.tech/topics/code.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>)

Tags: [client](<https://devfeed.tech/tags/client.md>), [dns](<https://devfeed.tech/tags/dns.md>), [http](<https://devfeed.tech/tags/http.md>), [http-server](<https://devfeed.tech/tags/http-server.md>), [localhost](<https://devfeed.tech/tags/localhost.md>), [server](<https://devfeed.tech/tags/server.md>), [udp](<https://devfeed.tech/tags/udp.md>), [website](<https://devfeed.tech/tags/website.md>)

### AI overview

A playful tutorial for running Cat-DNS, a Node-based DNS server that resolves hostnames to a fixed cat-hosting IP address. It explains running the server on UDP port 53, configuring localhost as the DNS server, and switching the configuration back when finished.

### Source excerpt

The internet needs more cats. DNS servers are the authority on all things internet. Therefore, the best DNS server is the one that resolves everything to cats. Guess what kind of DNS server this is (Hint: it's the cat kind). Making it go First, get the code, and the npm packages you need (the instructions are with the code). To run, start the server as a privileged process. This is because to be a DNS server, you need to be a UDP server on port 53. This is a small numbered port, which means it needs superpowers. This is how your run it: sudo node cat-dns.js You also need to somehow set your DNS server to be localhost. On a Mac, I do this by creating a new (wi-fi) interface (called Cats), in my Network preferences, and setting its DNS server to 127.0.0.1. You could do this on your normal interface, but this makes switching back and forth easier. Warnings While you're playing with this, pretty much nothing on your computer that requires the internet works. Except for your browser. And then that's mostly cats. So being able to deactivate this easily is kind of key (I know. You might think "Why would I ever want to deactivate cats?", but trust me on this one). I also recommend killing all the things that need to call the mothership (google hangouts, twitter feeds, dropbox, iMessage), because they will not like your sassy cat answers, and will slow everything down. You are ready Go in your browser to www.google.com and wait a bit. You should see a cat. Go to a different website. Another cat. Congratulations. Your internet is now all cats. Wait, what? Do not panic. While I recommend you don't look at the source because it's gross, if you do look at the source, you'll notice all it does is resolve any hostname to 54.197.244.191, which is a magical place on the internet that has cats. My friend @eigma made it, and is hosting it, so please try not to kill all the cat bandwith at once. You could also resolve everything to localhost, and serve your own for now cats on an http