Namespace TypedRest.Endpoints.Raw
Raw endpoints allow you to transmit binary data rather than serialized objects.
Use these when a resource is a file rather than an entity: avatars, attachments, exports, etc. Instead of running the body through a serializer, they hand you a Stream (or take one), so large payloads are transferred without being buffered in memory. Extension methods add overloads that take a file path instead. See Blob endpoint and Upload endpoint for their methods and usage.
An upload endpoint accepts data either as a raw request body or as multipart/form-data; pass a form field name to its constructor to pick the latter, which is what HTML file upload forms and most web frameworks expect.
Since a blob's operations often depend on permissions, ProbeAsync() asks the server (via HTTP OPTIONS) what is currently allowed and reflects the answer in DownloadAllowed, UploadAllowed and DeleteAllowed.
Classes
- BlobEndpoint
Endpoint for a binary blob that can be downloaded or uploaded.
- BlobEndpointExtensions
Provides extension methods for IBlobEndpoint.
- UploadEndpoint
Endpoint that accepts binary uploads using multi-part form encoding or raw bodies.
- UploadEndpointExtensions
Provides extension methods for IUploadEndpoint.
Interfaces
- IBlobEndpoint
Endpoint for a binary blob that can be downloaded or uploaded.
- IUploadEndpoint
Endpoint that accepts binary uploads.