我正在尝试创建一个REST客户端来衡量HTTP请求执行所需的时间,即测量客户端请求与服务器到达客户端后的响应之间的时间。还有其他更简单的方法来找到这个像小提琴等,但无论如何我都需要这个。我正在关注此处提供的Microsoft示例:
https://msdn.microsoft.com/en-us/library/debx8sh9%28v=vs.110%29.aspx
我应该记下回复的时间吗?
// Send the request:
DateTime T = System.DateTime.UtcNow; //--> Note the initial Time
HttpWebResponse response = (HttpWebResponse) req.GetResponse();
TimeSpan TT = System.DateTime.UtcNow - T; //--> Note the Time Difference
或者我应该在读取响应流后计算时间:
DateTime T = System.DateTime.UtcNow;//--> Note the initial Time
HttpWebResponse response = (HttpWebResponse) req.GetResponse();
// Get the stream containing content returned by the server.
dataStream = response.GetResponseStream();
// Open the stream using a StreamReader for easy access.
StreamReader reader = new StreamReader(dataStream);
// Read the content.
string responseFromServer = reader.ReadToEnd();
TimeSpan TT = System.DateTime.UtcNow - T;//--> Note the Time Difference
我只是不确定向服务器发出请求的确切行,并且客户端可以使用服务器的响应。
答案 0 :(得分:1)
根据msdn documentation,GetResponse()
会将请求发送到服务器并检索响应。
如果您只是对通话计时感兴趣,那么第一个选项将是您最好的选择。