基于socket类服务器编程.docx

基于socket类服务器编程.docx

ID:59071130

大小:66.63 KB

页数:2页

时间:2020-10-29

基于socket类服务器编程.docx_第1页
基于socket类服务器编程.docx_第2页
资源描述:

《基于socket类服务器编程.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1)启动VS.NET集成开发环境;2)选择“文件”菜单下“新建”选项,在模版栏中选择“控制台应用程序”;3)按下面流程设计程序;(1)处理多人连接的情况:在C#中,一般使用多线程来处理多人连接。服务器端收到客户端的请求时,用Socket类的Accept方法建立和客户端连接的Socket对象。代码示例如下:while(true){try{socketClient=socketServer.Accept( );…//使线程和每一个HTTP客户端连接ThreadThreadClient=newThread(newThreadStart(this.ProcessRequest));Thre

2、adClient.Start( );}catch(Exceptionex){Console.WriteLine(ex.Message.ToString( ));}if(socketClient.Connected)socketClient.close( );}(2)取得Web浏览器的HTTP请求,使用Socket类的Receive方法取得。示例如下:bytes=socketClient.Receive(recvBytes,0,socketClient.Available,SocketFlag.None);htmlReq=Encoding.ASCII.GetString(recvBy

3、tes,0,bytes);(3)定义虚拟目录:程序中指定项目所在目录为网址的主目录。StringrootPath=Directory.GetCurrentDirectory( )+"\wwwRoot\";(4)HTTP方法及请求浏览的资源。Web服务器需要从HTTP标题中取得HTTP方法及其资源。程序示例如下:strArray=htmlReq.Trim( ).Split("".ToCharArray( ));if(strArray[0].Trim( ).ToUpper( ).Equals("GET")){strRequest=strArray[1].Trim( ).ToStri

4、ng( );if(strRequest.StartsWith("/"))strRequest=strRequest.Substring(1);if(strRequest.EndsWith("/")

5、

6、strRequest.Equals(""))strRequest=strRequest+defaultPage;strRequest=rootPath+strRequest;sendHTMLResponse(strRequest);}else{strRequest=rootPath+"Error\"+"400.html";endHTMLResponse(strRequest);}(5

7、)最后,当传输结束时,Web服务器需关闭客户连接。程序示例如下:SocketClient.Shutdown(SocketShutdown.Both);SocketClient.Close( );4)编写代码;5)调试程序。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。