带正文和压缩数据的POST请求

时间:2019-09-24 20:48:11

标签: rest file upload

我想在POST请求中发送一个zip(.txt)文件以及请求中的一些JSON参数。 什么是示例请求以及发布请求的标头。 在POST URL中添加变量是正确的方法吗? 例如:POST example.com/v1/name/ {name} / Phone / {phone} / date / {date} / upload

[test.txt]

请提出建议。

1 个答案:

答案 0 :(得分:0)

您应该将文件转换为byte数组,并将其作为请求正文参数添加到您的请求中。使用RestSharp for .NET,这是我向请求中添加文件的方式:

RestRequest request = new RestRequest("api/someEndpoint", Method.POST);
request.AddHeader("Content-Type", "text/plain"); // optional: depends on API
request.AddHeader("File-Name", fileName); // optional: depends on API

// add the file here. you need to provide the absolute path to it
request.AddParameter("text/plain", File.ReadAllBytes(absolutePathToYourFile), ParameterType.RequestBody);

注意:我根据您对使用Content-Type: text/plain文件的评论使用了.txt。但是,如果文件扩展名为.zip,则需要使用application/zip作为Content-Type参数。