1 回答

TA貢獻(xiàn)1812條經(jīng)驗(yàn) 獲得超5個贊
我發(fā)現(xiàn)了問題:HTTP 客戶端的默認(rèn)超時是 100 秒。源代碼在這里:
https://github.com/dotnet/corefx/blob/master/src/System.Net.Http/src/System/Net/Http/HttpClient.cs#L17
我已經(jīng)像這樣更改了我的代碼:
public async Task<string> PostFile(string url, string filepath)
{
var request = new HttpClient
{
Timeout = TimeSpan.FromSeconds(3600)
};
var form = new MultipartFormDataContent();
string responseString = null;
using (var fileStream = new FileStream(filepath, mode: FileMode.Open))
{
using (var bufferedStream = new BufferedStream(fileStream))
{
form.Add(new StreamContent(bufferedStream), "file", new FileInfo(filepath).FullName);
var response = await request.PostAsync(url, form);
responseString = await response.Content.ReadAsStringAsync();
fileStream.Close();
}
}
return responseString;
}
問題解決了。
- 1 回答
- 0 關(guān)注
- 180 瀏覽
添加回答
舉報(bào)