Dart - api.post()
Register an API route and set a specific HTTP POST handler on that route.
This method is a convenient short version of api().route().post()
import 'package:nitric_sdk/nitric.dart';// Create an API named 'public'final api = Nitric.api("public");api.post("/customers/:customerId", (ctx) async {// Extract the path parameterfinal id = ctx.req.pathParams["customerId"]!;// Construct response for the POST: /customers request...final responseBody = {};ctx.res.json(responseBody);return ctx;});
Parameters
- Name
match
- Required
- Required
- Type
- String
- Description
The path matcher to use for the route. Matchers accept path parameters in the form of a colon prefixed string. The string provided will be used as that path parameter's name when calling handlers.
- Name
handler
- Required
- Required
- Type
- HttpHandler
- Description
The middleware service to use as the handler for HTTP requests.
- Name
security
- Optional
- Optional
- Type
- List<OidcOptions>
- Description
Security rules to apply with scopes to the entire API.
Examples
Register a handler for POST requests
import 'package:nitric_sdk/nitric.dart';// Create an API named 'public'final api = Nitric.api("public");api.post("/customers", (ctx) async {// Construct response for the POST: /customers request...final responseBody = {};ctx.res.json(responseBody);return ctx;});
Access the request body
The POST request body is accessible from the ctx.req
object.
import 'package:nitric_sdk/nitric.dart';// Create an API named 'public'final api = Nitric.api("public");api.post("/customers/:customerId", (ctx) async {// Extract the path parameterfinal id = ctx.req.pathParams["customerId"]!;// Extract the request bodyfinal customerData = ctx.req.json();// Construct response for the PATCH: /customers request...final responseBody = {};ctx.res.json(responseBody);return ctx;});
Last updated on Oct 22, 2024