我有一个Servicestack Web服务,它运行在Windows Azure上托管的ASP网站上。 当我使用多部分数据执行POST请求时,网站无法映射数据。
仅当我在Windows Azure上请求网站时才会出现此问题。它在我的本地机器上完美运行。
以下是我请求服务器的代码:
public async Task<Image> CreateAsync(Image image, byte[] data)
{
// Define Content.
var json = image.ToJson();
var token = ServiceLocator
.Retrieve<IAuthenticationService>()
.Authentication
.Token;
// Sending request.
using (var httpClient = new HttpClient())
{
httpClient
.DefaultRequestHeaders
.Accept
.Add(new MediaTypeWithQualityHeaderValue("application/json"));
using (var imageContent = new ByteArrayContent(data))
{
using (var postContent = new MultipartFormDataContent())
{
postContent.Add(new StringContent(token), "Token");
postContent.Add(new StringContent(json), "Json");
postContent.Add(imageContent, "File", "test.jpg");
string uri = General.Domain + "/image";
var response = await httpClient.PostAsync(uri, postContent);
response.EnsureSuccessStatusCode();
json = await response.Content.ReadAsStringAsync();
image = Image.FromJson(json);
return image;
}
}
}
}
有人已经遇到过这个问题吗?