惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
GbyAI
GbyAI
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 三生石上(FineUI控件)
美团技术团队
Last Week in AI
Last Week in AI
WordPress大学
WordPress大学
L
LangChain Blog
雷峰网
雷峰网
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 叶小钗
Engineering at Meta
Engineering at Meta
腾讯CDC
Recent Announcements
Recent Announcements
The Register - Security
The Register - Security
有赞技术团队
有赞技术团队
Blog — PlanetScale
Blog — PlanetScale
博客园 - Franky
博客园 - 司徒正美
The Cloudflare Blog
Google DeepMind News
Google DeepMind News
T
Tailwind CSS Blog
C
Check Point Blog
小众软件
小众软件
V
Visual Studio Blog
V
V2EX
F
Full Disclosure
J
Java Code Geeks
MongoDB | Blog
MongoDB | Blog
罗磊的独立博客
人人都是产品经理
人人都是产品经理
量子位
Apple Machine Learning Research
Apple Machine Learning Research
F
Fortinet All Blogs
Microsoft Security Blog
Microsoft Security Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 【当耐特】
博客园_首页
Y
Y Combinator Blog
N
Netflix TechBlog - Medium
酷 壳 – CoolShell
酷 壳 – CoolShell
Stack Overflow Blog
Stack Overflow Blog
Recorded Future
Recorded Future
G
Google Developers Blog
Vercel News
Vercel News
大猫的无限游戏
大猫的无限游戏
Microsoft Azure Blog
Microsoft Azure Blog
U
Unit 42
爱范儿
爱范儿
Jina AI
Jina AI

Netlify Changelog

Gemini 3.5 Flash now available in Agent Runners 4 Nuxt CVEs: what Netlify users need to know Gemini 3.5 Flash now available in AI Gateway Agent Runners workflow improvements Next.js & React security release (May 2026): what to know Block project transfers out of your team Gemini 3.1 Flash-Lite now available in AI Gateway OpenAI GPT-5.5 Instant now available in AI Gateway New `netlify logs` CLI command Deploy to Netlify with Stripe Projects Netlify Database is now generally available OpenAI GPT-5.5 and GPT-5.5 Pro in AI Gateway & Agent Runners Rename an agent run GPT Image 2 now available in AI Gateway New frontend-design skill for Agent Runners Claude Opus 4.7 now available in AI Gateway and Agent Runners Pricing updates for Credit-based plans New sorting and filter controls on the Members page Netlify Database GA coming soon, no new databases for now Deploy logs streaming is now faster Netlify CLI adds prompt-based creation and anonymous deploys Deploy from Codex with the Netlify Plugin Hydrogen with React Router 7 now supported on Netlify Monitor credit usage by day Invoices for Enterprise Available on the Billing Page AI app development on production infrastructure with Netlify Introducing Prompt Templates OpenAI GPT-5.4 Nano and GPT-5.4 Mini in AI Gateway Change your pricing plan Internal Builder Role & Project Access Controls See your available credits at a glance Astro 6 just works on Netlify Limit AI feature usage OpenAI GPT-5.4 and GPT-5.4 Pro in AI Gateway & Agent Runners Deploy Preview screenshots in agent runs Gemini 3.1 Flash-Lite Preview now available in AI Gateway GPT-5.3 Instant now available in AI Gateway Use Netlify Agent Runners from Linear Automatic PHP bot scan blocking now live on all plans Support for stale-while-revalidate in Cache API Gemini 3.1 Flash Image Preview now available in AI Gateway GPT-5.3-Codex now available in AI Gateway Gemini 3.1 Pro Preview now available in AI Gateway Claude Sonnet 4.6 now available in AI Gateway and Agent Runners Sync changes with Agent Runners without Git Claude Opus 4.6 now available in AI Gateway and Agent Runners Agent Runners improvements recap 6 new React Router & Remix CVEs: what you need to know Vulnerability in Node.js: what Netlify users need to know 5 SvelteKit security vulnerabilities: what Netlify users need to know GPT-5.2-Codex Now Available in AI Gateway and Agent Runners Play Games While Agent Runners Do the Work Prerender.io support updated as new extension Gemini 3 Flash Preview now available in AI Gateway GPT-image-1.5 now available in AI Gateway AI Gateway now Generally Available Observability release is here Prerender extension now generally available Action required: React/Next.js CVE-2025-55184 and CVE-2025-55183 GPT-5.2 and GPT-5.2-Pro now available in AI Gateway and Agent Runners GPT-5.1-Codex-Max now available in AI Gateway and Agent Runners Netlify’s response to the critical React security vulnerability Netlify Vite Plugin now supports AI Gateway locally Claude Opus 4.5 now available in AI Gateway Projects deployed using a zip file via API now support branch deploys Day one support for Angular v21 on Netlify Gemini 3 now available in AI Gateway and Agent Runners DNS record management simplified for teams in Netlify organizations Skew protection for CLI workflows Support for more domain TLDs GPT-5.1 model now available in AI Gateway React Router 7 apps can now be deployed to Edge Functions | Netlify Changelog Git SHA exposed for triggered deploys | Netlify Changelog Test scheduled functions in Netlify dashboard | Netlify Changelog Revert agent run in a task | Netlify Changelog Deletion improvements with Netlify Blobs | Netlify Changelog Preview Server restart for cross-functional collaborators | Netlify Changelog AI inference usage graphs | Netlify Changelog Buy credit packs on demand | Netlify Changelog React Router 7 middleware now supported | Netlify Changelog Skew protection now available | Netlify Changelog Next.js 16 is ready to deploy on Netlify | Netlify Changelog Enforce Git-based workflows for production deploys | Netlify Changelog Claude Haiku 4.5 is now available in the AI Gateway | Netlify Changelog GPT 5 Pro now available in the AI Gateway | Netlify Changelog Updates to credit-based Personal and Pro plans | Netlify Changelog New AI workflows: Agent Runners and AI Gateway (beta) | Netlify Changelog Netlify pricing update: Introducing credit-based plans | Netlify Changelog Security Update: Multiple vulnerabilities in Next.js | Netlify Changelog ChatGPT deep link for failed deploy analysis | Netlify Changelog Equinix IP address expiring for 4-year old sites | Netlify Changelog Nuxt 4 support + new @netlify/nuxt module for local dev | Netlify Changelog Smart Secret Scanning for AI-Generated Code | Netlify Netlify DB: Serverless PostgreSQL Database | Netlify One-click install Netlify MCP on Cursor | Netlify Changelog Netlify MCP Server: AI Agents Can Now Deploy Code Directly | Netlify Netlify Becomes Official Vite Deployment Partner + New Plugin | Netlify Angular 20 support | Netlify Changelog Netlify CLI 21.4.1 UI and workflow enhancements | Netlify Changelog Security Update: Next.js sites on Netlify not vulnerable to CVE-2025-32421 | Netlify Changelog
Netlify introduces new Functions capabilities
Nahrin Jalal · 2023-10-12 · via Netlify Changelog

When we first introduced Netlify Functions over five years ago, we pioneered a workflow in which developers write backend code that is version-controlled, built, and deployed alongside their frontend application — without having to ever worry about scaling or managing servers.

We’ve iterated on this initial proposition over time by introducing Background Functions, Scheduled Functions, support for response streaming, and Edge Functions. These have made functions an essential building block for developers and frameworks on Netlify.

As part of a renewed commitment to expand our core platform primitives, we are excited to announce the biggest leap we’ve ever taken in the developer experience for Netlify Functions.

Every one of these changes has the clear goal of empowering developers to create complex applications by simply using the platform, leveraging industry standards, without getting locked in to any specific framework or tooling.

The first iteration of Netlify Functions exposed the API surface of the underlying compute provider, AWS Lambda. We are now introducing a brand new, modern API, built on web platform standards, that we think will dramatically improve the developer experience of authoring functions.

Functions are now defined as methods that receive a standard Request and return a standard Response, in line with the Edge Functions API.

A Netlify-specific Context object gives you access to information about the incoming request, like geolocation, IP address, and metadata pertaining to your site and deploy. It also provides a convenient way to manipulate cookies:

import { Context } from "@netlify/functions"

export default async (req: Request, context: Context) => {

if (context.cookies.get("chocolate")) {

return new Response("Sorry, no more cookies for you")

}

context.cookies.set("chocolate", "yummy")

return new Response("Here's a chocolate cookie! 🍪")

}

Custom endpoints

When you create a function, Netlify automatically creates an endpoint with the format /.netlify/functions/<function name> so you can start interacting with your code straight away. However, often times developers want to serve their functions on a different endpoint, which historically was achieved by creating a redirect rule pointing to the function endpoint.

We’re making that a lot easier by letting you specify the function endpoint within the function code itself, using a new config export:

import { Config, Context } from "@netlify/functions"

export default async (req: Request, context: Context) => {

return new Response(`Your IP is ${context.ip}`)

}

export const config: Config = {

path: "/whatismyip"

}

When you deploy the function above, it will be served on the /whatismyip URL path — no redirect rules required.

Advanced routing

When using functions to build API endpoints, developers often have to process input from URL parameters, which can quickly grow into a complex router that you shouldn’t have to build over and over again.

We’re now making it possible to define custom endpoints using the URLPattern web platform standard, with the full power of wildcards and named groups, and access the extracted values conveniently inside the function:

import { Config, Context } from "@netlify/functions";

export default async (req: Request, context: Context) => {

const { city, country } = context.params

return new Response(`Travel guide for ${city} in ${country}!`)

}

export const config: Config = {

path: "/travel-guide/:country/:city"

}

When you deploy the code above and access /travel-guide/portugal/lisbon, the function will return Travel guide for Lisbon in Portugal.

HTTP method matching

Another common scenario when building non-trivial applications with functions is the need to run some business logic in response to only certain types of requests. For example, you might want to have a function that only runs for POST requests and lets all other requests hit a static file.

That is now possible using the method property of the new config export, which accepts one or more HTTP verbs:

import { Config, Context } from "@netlify/functions";

export default async (req: Request, context: Context) => {

const data = await req.text()

await processData(data)

return new Response("Thank you for your submission!")

}

export const config: Config = {

method: "POST",

path: "/form-submission"

}

This capability has also been added to Edge Functions, using the same syntax.

Zero-config streaming

When we launched support for response streaming, we exposed a stream wrapper that developers could use to tell the platform that a function would stream its response.

That requirement is going away with the new API. If you’d like to return a streamed response, you can simply return a standard Response object with a stream as the body:

import { Context } from "@netlify/functions"

export default async (req: Request, context: Context) => {

const encoder = new TextEncoder()

const formatter = new Intl.DateTimeFormat("en", { timeStyle: "medium" })

const body = new ReadableStream({

start(controller) {

controller.enqueue(encoder.encode("<html><body><ol>"))

let i = 0

const timer = setInterval(() => {

controller.enqueue(

encoder.encode(

`<li>Hello at ${formatter.format(new Date())}</li>\n\n`

)

)

if (i++ >= 5) {

controller.enqueue(encoder.encode("</ol></body></html>"))

controller.close()

clearInterval(timer)

}

}, 1000)

}

})

return new Response(body)

}

Lambda compatibility mode

It’s important to clarify that the existing API is not going anywhere and existing functions will continue to work in the same way. In fact, you can still choose to create new functions using this syntax, which can be particularly useful for developers who want to migrate workflows from AWS Lambda into Netlify with minimal refactoring.

You can read more about this in the documentation for the Lambda compatibility mode.

Try it out today

We invite you to try the new functions experience today. Visit our documentation for more information on how to get started.

If you use the Netlify CLI to develop or deploy your functions, make sure you update to version 16.6.2 or above.

Finally, we would love to hear about your experience through our support portal or our community forum. Your feedback played a key role in the development of the improvements we’re announcing today, and will undoubtedly shape the next one.

Want to learn more?

Register for free and tune in to Netlify Compose next week to hear more about Netlify Functions and other exciting primitives announcements.