本文摘自PHP中文网,作者黄舟,侵删。
这篇文章主要介绍了关于C#利用Socket实现创建一个小型Web Server的相关资料,文中通过示例代码介绍的很详细,需要的朋友可以参考借鉴,下面来一起看看吧。要实现了Web Server,通过以下几句代码浏览器访问就可以获得访问的数据。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
但以上只是原理,实际会很复杂,不过就算我们要做简单的 Web Server,还是需要解决两个问题:
一、输出 HTTP 头
1 2 3 4 5 6 7 8 9 10 |
|
只要有特定的格式,就会被浏览器当作 HTTP 头对待。HTTP 头的格式为:
第一行:HTTP/1.x + 空格 + 状态码 + 空格 + 描述
中间行:名称 + 冒号 + 空格(也可以省略) + 值
最后行:空行
格式一定要正确,否则影响浏览器对 HTTP 头和 HTTP 体的识别。
二、请求 HTTP 头
到目前为止,我们还不知道浏览器中输入的 URL 是什么呢。请求的 HTTP 头也是有特定格式的,我们只需要将其获取出来,进行拆解,就可以获取 URL 了。
拆解不是难事,我们说一说如何获取吧。前面的 data、length 不是一直没用么?如下:
1 |
|
完整代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
|
总结
以上就是C#使用Socket创建一个小型的Web Server代码分享的详细内容!
相关阅读 >>
C#如何将datatable中的列名复制到另一个datatable
C#开发 winform如何在选项卡中集成加载多个窗体 实现窗体复用详解(图)
更多相关阅读请进入《C#》频道 >>
C#高级编程(第11版) C# 7 & .NET Core 2.0(.NET开发经典名著)
作者:[美]克里斯琴·内格尔(Christian Nagel)著。出版时间:2019年3月。