C#删除特定标头

时间:2017-04-22 14:23:08

标签: c# httpclient multipart

我目前正在尝试重现以下POST请求: need

现在我的代码我得到了这个: have

我假设第一个键是使用添加的 System.Net.Http.StringContent 不幸的是,我找不到另一种方法来制作它。

我目前正在使用.NET Core C#。 所以我的代码是使用httpclient构建的。为了在较少(但丑陋的代码)中重现问题,我很快将一些代码粘贴在一起。

如何才能获得与第一张图片相同的帖子请求?

我的代码:

String lMultipartBoundary = Guid.NewGuid().ToString();

MultipartFormDataContent lMultipartContent = new MultipartFormDataContent(lMultipartBoundary);

string header = string.Format("--{0}", lMultipartBoundary);
string footer = string.Format("--{0}--", lMultipartBoundary);
StringBuilder contents = new StringBuilder();
contents.AppendLine(header);
contents.AppendLine(String.Format("Content-Disposition: form-data; name=\"{0}\"", "adult"));
contents.AppendLine();
contents.AppendLine("1");

contents.AppendLine(header);
contents.AppendLine(String.Format("Content-Disposition: form-data; name=\"{0}\"", "thumb_size_contaner"));
contents.AppendLine();
contents.AppendLine("1");

contents.AppendLine(header);
contents.AppendLine(String.Format("Content-Disposition: form-data; name=\"{0}\"", "simple_upload"));
contents.AppendLine();
contents.AppendLine("Upload");

contents.AppendLine(footer);
lMultipartContent.Add(new StringContent(contents.ToString()));

var lFileInfo = new System.IO.FileInfo(@"D:\_Dev\Resources\trainee_iconset_226_icons_by_emey87-d36v4yq\48 px  web icons\PNG\basketball.png");
ByteArrayContent fileContent = new ByteArrayContent(System.IO.File.ReadAllBytes(@"D:\_Dev\Resources\trainee_iconset_226_icons_by_emey87-d36v4yq\48 px  web icons\PNG\basketball.png"));

fileContent.Headers.ContentDisposition = new ContentDispositionHeaderValue("form-data")
{
    Name = "\"uploaded\"",
    FileName = "\"" + lFileInfo.Name + "\""
};
fileContent.Headers.ContentType = MediaTypeHeaderValue.Parse("image/png");
lMultipartContent.Add(fileContent);

lMultipartContent.Headers.Add("Origin", "https://imgtaxi.com");
var result = await client.PostAsync("/upload.php", lMultipartContent);
var lresponseJson = await result.Content.ReadAsStringAsync();

非常感谢。

0 个答案:

没有答案