Maison > développement back-end > C++ > Comment accepter les requêtes POST de fichiers dans l'API Web ASP.NET MVC ?

Comment accepter les requêtes POST de fichiers dans l'API Web ASP.NET MVC ?

Mary-Kate Olsen
Libérer: 2025-01-24 01:21:09
original
1008 Les gens l'ont consulté

How to Accept File POST Requests in ASP.NET MVC Web API?

Gestion des téléchargements de fichiers dans l'API Web ASP.NET MVC

Cet exemple montre comment traiter les téléchargements de fichiers à l'aide de multipart/form-data dans une API Web ASP.NET MVC.

La méthode Upload ci-dessous utilise Request.Content.IsMimeMultipartContent() pour vérifier si la demande est un formulaire en plusieurs parties. Sinon, il renvoie un HttpResponseException indiquant un type de média non pris en charge. Sinon, il utilise MultipartMemoryStreamProvider pour lire les données en plusieurs parties de manière asynchrone. Le code parcourt ensuite chaque fichier, extrayant le nom de fichier et le contenu sous forme de tableau d'octets. Vous pouvez adapter la logique de traitement des fichiers à vos besoins spécifiques.

<code class="language-csharp">[HttpPost("api/upload")]
public async Task<IHttpActionResult> Upload()
{
    if (!Request.Content.IsMimeMultipartContent())
    {
        throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
    }

    var provider = new MultipartMemoryStreamProvider();
    await Request.Content.ReadAsMultipartAsync(provider);

    // Process uploaded files
    foreach (var file in provider.Contents)
    {
        var filename = file.Headers.ContentDisposition.FileName.Trim('"');
        var buffer = await file.ReadAsByteArrayAsync();

        // Save the file, process the data, or perform other actions here.
        // Example: Save to disk
        // var filePath = Path.Combine(Server.MapPath("~/App_Data"), filename);
        // File.WriteAllBytes(filePath, buffer);

    }

    return Ok();
}</code>
Copier après la connexion

Ce code amélioré fournit des commentaires plus clairs et une explication plus concise du processus. N'oubliez pas de remplacer l'exemple d'enregistrement de fichier commenté par la logique de gestion de fichier souhaitée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal