使用套接字连接获取网站的状态代码

per*_*ide 1 c#


我正在使用套接字连接到网站,我想获取该网站的状态代码.

Socket socket_1 = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
IAsyncResult result = socket_1.BeginConnect(iis1, 80, null, null);

如何判断网站是启动还是404?
谢谢

dri*_*iis 6

为了使用套接字连接执行此操作,您首先需要形成有效的http请求并通过套接字发送它.然后阅读服务器响应; 解析标题并查找状态代码.HTTP的规范在这里,您将需要实现您需要的部分,以便使用原始套接字执行此操作.

这不应该是一个问题,因为它很简单 - 但我不建议使用套接字来做这件事.如果您需要检查网站可用性,框架中有更好的选项.最简单的是WebClientHttpWebRequest.

如果您只需要了解可用性,则可以发送HEAD请求以仅获取标头.