# 为什么不支持WebGL Networking

[.NET 中的 HTTP 支持 - .NET | Microsoft Learn](https://learn.microsoft.com/zh-cn/dotnet/fundamentals/networking/http/http-overview)

癫火小魔女纱代酱 2022/11/1 23:01:46
云却，你这个库能当webserver用麽

云却 2022/11/1 23:04:57
不支持webgl，报头需要客户端服务器对应，客户端不用我这个库的话，需要实现报头

癫火小魔女纱代酱 2022/11/1 23:05:38
啊，就是httpserver

云却 2022/11/1 23:05:43
webserver不是都是http协议吗

癫火小魔女纱代酱 2022/11/1 23:06:41
嗯嗯

云却 2022/11/1 23:06:42
我有点没懂你的需求，家人睡觉了，明天语音说

癫火小魔女纱代酱 2022/11/1 23:06:50
好

云却 2022/11/2 16:29:49
昨天你要说什么需求

癫火小魔女纱代酱 2022/11/2 16:31:07
啊，我就是想整个httpserver

云却 2022/11/2 16:31:27
http协议 是 比tcp udp 高一层的协议。我这个库也是比tcp udp 高一层。可以理解为和http平级，但是功能特性不一样的。所以不能代替http

癫火小魔女纱代酱 2022/11/2 16:31:43
我后来看到了这个https://github.com/chronoxor/NetCoreServer

癫火小魔女纱代酱 2022/11/2 16:31:45
嗯嗯

云却 2022/11/2 16:33:15
用我这个库的监听端口， 客户端用httprequest ，我这个库是解析不了的。协议头不一样。另外c# 自带了httpserver，也不需要库来自己实现

癫火小魔女纱代酱 2022/11/2 16:34:01
嗷嗷

云却 2022/11/2 16:34:25
癫火小魔女纱代酱   我后来看到了这个https://github.com/chronoxor/NetCoreServer
昨天我看这个了，主要是理解不到 需求点是什么。http的功能和我的功能 有重叠部分也有互斥部分。基本上不存在需要兼容的情况

云却 2022/11/2 16:35:47
http 简单来说就是发字符串 一问一答，每次问答后断开连接。 我的功能是发送任何类型，也支持一问一答。但是保持连接。

癫火小魔女纱代酱 2022/11/2 16:37:45
对，区别就在于是否保持连接（

癫火小魔女纱代酱 2022/11/2 16:38:08
我现在用到的不需要保持连接

云却 2022/11/2 16:39:34
那你每次用完断开连接就行了。HTTP底层也是每次tcp 连接 发送 请求 接收恢复 断开连接。 就是断开连接过程它包起来了用户看不见。其实性能屌差

云却 2022/11/2 16:40:22
所有http23 都是多路复用，加上适当的保持连接。业务逻辑当还是当作无连接

癫火小魔女纱代酱 2022/11/2 16:40:28
emmmmmm，用完断开麽

癫火小魔女纱代酱 2022/11/2 16:41:03
不停的连接断开会有影响

癫火小魔女纱代酱 2022/11/2 16:41:20
如果量比较大的话

云却 2022/11/2 16:41:20
其实不会有啥影响

云却 2022/11/2 16:41:30
http这么多年就是这么过来的

癫火小魔女纱代酱 2022/11/2 16:41:48
我试试！

云却 2022/11/2 16:44:25
另外有什么原因 明确需要每次都断开连接么？ 连着就连着呗，也没啥损失。顶多服务器占点内存

癫火小魔女纱代酱 2022/11/2 16:44:43
云却   另外有什么原因 明确需要每次都断开连接么？ 连着就连着呗，也没啥损失。顶多服务器占点内存
会占资源吧

癫火小魔女纱代酱 2022/11/2 16:45:08
就是我做的基本就和普通的app一样，就请求接口，请求数据

癫火小魔女纱代酱 2022/11/2 16:46:06
如果一直连接的话，不是会占用连接数麽，数量多了的话，没有操作也连着不就浪费了

云却 2022/11/2 16:46:22
那就每次用完断开吧。没什么问题。

癫火小魔女纱代酱 2022/11/2 16:46:42
嗯嗯

云却 2022/11/2 16:47:47
无连接 就是 无状态。一个请求不和另一个请求发生关系，也不关心客户端是谁， 写起来最简单了。

癫火小魔女纱代酱 2022/11/2 16:48:29
嗯嗯

癫火小魔女纱代酱 2022/11/2 16:49:30
我晚上再看一看

云却 2022/11/2 16:49:59
突然想起来了，如果我的库想要兼容http也不是不行，协议头解析函数是可重写的。晚上我写个看看

云却 2022/11/2 16:50:14
预留了虚函数

云却 2022/11/2 17:24:56
结论：
第一：可以兼容http协议相关的但没有必要。还要处理cookie啥的，配套功能太多了，微软写的好，我写不出来。
第二：无论如何都没有办法在WebGL平台使用，不支持的API太多了，几乎等于重写整个流程，没法支持。

另外，http也不是每次都断开连接，之前我理解的有问题，可以设置保持多长时间连接，微软示例代码默认保持15分钟。

云却 2022/11/2 17:25:02
https://learn.microsoft.com/zh-cn/dotnet/fundamentals/networking/http/httpclient-guidelines

癫火小魔女纱代酱 2022/11/2 17:25:57
酱紫

云却 2022/11/2 17:26:09
如果客户端请求用的http，那么服务器应该用httplistener

癫火小魔女纱代酱 2022/11/2 17:26:26
嗯嗯

云却 2022/11/2 17:27:08
看了下一些写http业务的，原来也有很多优化技巧。什么时候保持连接啥的。以前只看过简单示例代码，没具体写过业务。

云却 2022/11/2 17:28:24
如果想把我的库向当作http那样用，15分钟断开一次连接就行了。这个值挺合适的

癫火小魔女纱代酱 2022/11/2 17:28:30
好
