簡體   English   中英

如何使用Content-Type:multipart / form-data通過Web API請求主體參數訪問?

[英]How request body parameter access by Web API using Content-Type: multipart/form-data?

當我以JSON格式從Request主體傳遞參數時,不會被Web API擊中。 我的代碼:

    public async Task<HttpResponseMessage> Upload([FromBody]AddPhotoBizPrm addPhotoBizPrm)
    {
        json_obj.RESPONSE = new { };
        string images = "";
        if (Request.Content.IsMimeMultipartContent())
        {

            var provider = new MultipartMemoryStreamProvider();
            await Request.Content.ReadAsMultipartAsync(provider);
            foreach (var file in provider.Contents)
            {
                var filename = file.Headers.ContentDisposition.FileName.Trim('\"');
                var buffer = file.ReadAsByteArrayAsync();
                images += filename;
                //Do whatever you want with filename and its binary data.
            }
        }
        json_obj.RESPONSE = images;
        json_obj.MESSAGE = "";
        json_obj.STATUS_CODE = 701;
        return new HttpResponseMessage()
        {
            Content = new StringContent("ok")
        };
    }

我從請求正文傳遞參數:

{
deviceid:"",
rate:2,
review:"",
skuid:123,
userId:875904
}

解決了這個問題。 我正在使用content-type = multipart / form-data,因此我們無法將json參數傳遞給請求正文。 因此,我們將以數據形式傳遞參數,例如deviceid =“”&rate = 2&review =“”&skuid = 123&userId = 875904

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM