读取文件直到 HttpWebResponse 可用
read the file until HttpWebResponce is avaiable
我在 NET4 中有以下代码
String ret;
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(url);
httpWebRequest.Method = "POST"; httpWebRequest.KeepAlive = true;
httpWebRequest.Credentials = System.Net.CredentialCache.DefaultCredentials;
using (var response = (HttpWebResponse)httpWebRequest.GetResponse())
{
using (var responseStream = response.GetResponseStream())
using (var reader = new StreamReader(responseStream, Encoding.UTF8))
ret = reader.ReadToEnd();
response.Close();
}
return ret;
工作正常,应该没有问题。问题是当代码试图读取服务器上的文件时,服务器还没有创建它。所以我想知道有没有什么好的方法可以在系统尝试复制之前等待文件出现在服务器端。
干杯,
ES
READ_AGAIN:
using (var response = (HttpWebResponse)httpWebRequest.GetResponse())
{ if(response == null)
goto READ_AGAIN;
using (var responseStream = response.GetResponseStream())
using (var reader = new StreamReader(responseStream, Encoding.UTF8))
ret = reader.ReadToEnd();
response.Close();
}
听从了 Eser 的建议并在服务器内进行了必要的更改。现在服务器检查是否在将结果发布给客户端之前创建了临时文件。
我在 NET4 中有以下代码
String ret;
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(url);
httpWebRequest.Method = "POST"; httpWebRequest.KeepAlive = true;
httpWebRequest.Credentials = System.Net.CredentialCache.DefaultCredentials;
using (var response = (HttpWebResponse)httpWebRequest.GetResponse())
{
using (var responseStream = response.GetResponseStream())
using (var reader = new StreamReader(responseStream, Encoding.UTF8))
ret = reader.ReadToEnd();
response.Close();
}
return ret;
工作正常,应该没有问题。问题是当代码试图读取服务器上的文件时,服务器还没有创建它。所以我想知道有没有什么好的方法可以在系统尝试复制之前等待文件出现在服务器端。
干杯, ES
READ_AGAIN:
using (var response = (HttpWebResponse)httpWebRequest.GetResponse())
{ if(response == null)
goto READ_AGAIN;
using (var responseStream = response.GetResponseStream())
using (var reader = new StreamReader(responseStream, Encoding.UTF8))
ret = reader.ReadToEnd();
response.Close();
}
听从了 Eser 的建议并在服务器内进行了必要的更改。现在服务器检查是否在将结果发布给客户端之前创建了临时文件。