服务器端第二个HTTP请求

时间:2012-05-10 21:01:33

标签: c# asp.net httprequest server-side httpresponse

有没有办法从C#中的服务器端代码发送HTTP请求并收集结果?我想做的是:

  1. 从客户端浏览器发送到页面的HTTPRequest
  2. 服务器端C#代码执行一些布尔检查
  3. 如果检查平移,请将HTTPRequest发送到另一页
  4. 获取HTTPResponse并填充div的innerHTML
  5. 将自己的HTTPResponse发送到客户端浏览器以供查看
  6. 这可能吗?

2 个答案:

答案 0 :(得分:2)

您也可以在服务器端使用与“普通”(即客户端)应用程序相同的库。 HttpWebRequestWebClient等,他们应该可以正常工作。

但需要注意的是:如果您发出同步请求(HttpWebRequest.GetResponseWebClient.DownloadData等),那些请求将阻止服务器线程,因此如果您需要扩展服务器以提供服务这可能会成为一个问题的客户数量。如果发生这种情况,您可以考虑使您的操作异步。但除非你有(当前或可预见的)问题,否则你不应该这样做。

答案 1 :(得分:0)

如果我理解正确,那就有可能。您可以查看HttpWebRequest和HttpWebResponse类。 http://msdn.microsoft.com/en-us/library/system.net.httpwebresponse.getresponsestream.aspx