![](/img/trans.png)
[英]How can i send 2 parameters in multipart/form-data at restsharp?
[英]Can not add “boundary” to multipart/form-data
我正在嘗試將分段請求發布到Web API。 我的控制器看起來像這樣:
using (var client = new HttpClient())
{
var obj = JsonConvert.SerializeObject(
model,
Formatting.None,
new HttpPostedFileConverter());
var boundary = "----" + DateTime.Now.Ticks.ToString("x", NumberFormatInfo.InvariantInfo);
var contentType = new StringBuilder("multipart/form-data; boundary=")
.Append(boundary);
var httpContent = new StringContent(
obj,
Encoding.UTF8,
contentType.ToString()); //error shows here
var uri = new StringBuilder(_domain)
.Append("/api/email/send");
var response = await client.PostAsync(uri.ToString(), httpContent);
....
....
}
當我嘗試添加contentType
時,會發生問題。 它顯示錯誤The format of value 'multipart/form-data; boundary=---***' is invalid.
The format of value 'multipart/form-data; boundary=---***' is invalid.
Attachments
類型為List<HttpPostedFileBase>
。 我沒有使用MultipartFormDataContent
因為我在模型中以json格式保存了上傳的文件,而我不知道該如何與MultipartFormDataContent
一起使用。 如果有人可以告訴我這里出了什么問題,或者這不是正確的發布方式,那么請給我看一個示例如何做,這將非常有幫助。
不知道這是否可以完全回答您的問題,但我正在處理此問題,發現有兩種方法可以解決此問題...
方法一...
myHttpRequestMessage.Content.Headers.Remove("Content-Type");
myHttpRequestMessage.Content.Headers.TryAddWithoutValidation("Content-Type", "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW");
方法二...
myHttpRequestMessage.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("multipart/form-data");
myHttpRequestMessage.Content.Headers.ContentType.Parameters.Add(new System.Net.Http.Headers.NameValueHeaderValue("boundary", "----WebKitFormBoundary7MA4YWxkTrZu0gW"));
但是,話雖如此,在我的特定情況下(與您的情況不完全匹配),解決方案是...
System.Net.Http.MultipartFormDataContent myMultipartFormDataContent = new System.Net.Http.MultipartFormDataContent("------WebKitFormBoundary7MA4YWxkTrZu0gW");
myMultipartFormDataContent.Add(new System.Net.Http.StringContent(myTextValue), "users_file", "userAccounts.csv");
myHttpRequestMessage.Content = myMultipartFormDataContent;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.