当前位置: 首页 > wzjs >正文

网站建设的元素松江移动网站建设

网站建设的元素,松江移动网站建设,网页制作与设计html,赚钱软件学生看到一个文章[Go] 不到 100 行代码实现一个支持 CONNECT 动词的 HTTP 服务器 原理图如下: 这里在NET8.0中实现反向代理服务器部分 新建MiniApi项目 编辑Program.cs文件。 var builder WebApplication.CreateSlimBuilder(args);var app builder.Build();// 将…

看到一个文章[Go] 不到 100 行代码实现一个支持 CONNECT 动词的 HTTP 服务器

原理图如下:
在这里插入图片描述

这里在NET8.0中实现反向代理服务器部分

新建MiniApi项目
在这里插入图片描述
编辑Program.cs文件。

var builder = WebApplication.CreateSlimBuilder(args);var app = builder.Build();// 将HTTP请求通过协议升级机制转为远程TCP请求(WebSocket分支,Nginx支持) 
app.Map("/http2tcp", async (context) =>
{var upgradeFeature = context.Features.Get<Microsoft.AspNetCore.Http.Features.IHttpUpgradeFeature>();if (upgradeFeature != null && upgradeFeature.IsUpgradableRequest){context.Features.Get<Microsoft.AspNetCore.Http.Timeouts.IHttpRequestTimeoutFeature>()?.DisableTimeout();context.Response.Headers.Connection = Microsoft.Net.Http.Headers.HeaderNames.Upgrade;context.Response.Headers.Upgrade = "http2tcp/1.0";Stream stream = await upgradeFeature.UpgradeAsync();using System.Net.Sockets.TcpClient tcpClient = new System.Net.Sockets.TcpClient();await tcpClient.ConnectAsync(System.Net.IPEndPoint.Parse("127.0.0.1:1000"));using System.Net.Sockets.NetworkStream network = tcpClient.GetStream();var taskX = network.CopyToAsync(stream);var tsakY = stream.CopyToAsync(network);Task.WaitAny(taskX, tsakY);}
});// 将HTTP请求通过CONNECT方法转为TCP请求(CONNECT分支)主流浏览器都支持  https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/CONNECT
app.MapMethods("", new[] { HttpMethods.Connect }, async (context) =>
{var auth = context.Request.Headers["Proxy-Authorization"];await context.Response.Body.FlushAsync();var socket = context.Features.Get<Microsoft.AspNetCore.Connections.Features.IConnectionSocketFeature>()!.Socket;var stream = new System.Net.Sockets.NetworkStream(socket);using var tcpClient = new System.Net.Sockets.TcpClient();await tcpClient.ConnectAsync(System.Net.IPEndPoint.Parse(context.Request.Host.Value));using var network = tcpClient.GetStream();var taskX = network.CopyToAsync(stream);var tsakY = stream.CopyToAsync(network);Task.WaitAny(taskX, tsakY);await socket.DisconnectAsync(true);socket.Close();
});app.Run();

正向代理服务器的HttpClient请求如下,将获取到的TcpStream和TcpListener的NetworkStream串联即可。

// HTTP Upgrade 客户端请求方式
GET http://127.0.0.1:5199/http2tcp HTTP/1.1
Connection: upgrade
Upgrade: example/1, foo/2
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)
Accept-Encoding: gzip, deflate
Host: 127.0.0.1:5199HTTP CONNECT 客户端请求方式
CONNECT 127.0.0.1:1000 HTTP/1.1
Host: 127.0.0.1:1000
Proxy-Authorization: basic aGVsbG86d29ybGQ=

如下是正向代理服务器和目标服务器之间数据传输示意图。
在这里插入图片描述


文章转载自:

http://L86vEr0h.cczrw.cn
http://M9QqYzQZ.cczrw.cn
http://wld7twZ7.cczrw.cn
http://goOL5SNW.cczrw.cn
http://3waVflbZ.cczrw.cn
http://mWrehMte.cczrw.cn
http://zos1Asp4.cczrw.cn
http://v8wx33fr.cczrw.cn
http://f8Wc65p3.cczrw.cn
http://2NaJO9J5.cczrw.cn
http://hCHRqvG0.cczrw.cn
http://smgIyIUf.cczrw.cn
http://NVKh95pG.cczrw.cn
http://21VIubHZ.cczrw.cn
http://uq2Pnj7w.cczrw.cn
http://H8DPP9pw.cczrw.cn
http://0HlMJErS.cczrw.cn
http://9rHdHecu.cczrw.cn
http://uEXKWZlD.cczrw.cn
http://oFYvSLzW.cczrw.cn
http://PnkVg6Wj.cczrw.cn
http://trNoKhOj.cczrw.cn
http://L9aLuByr.cczrw.cn
http://5fTUl4Kr.cczrw.cn
http://DuKKVu6s.cczrw.cn
http://xmksOp0R.cczrw.cn
http://cKKOSCgL.cczrw.cn
http://aUryQnSX.cczrw.cn
http://PD3q0Vev.cczrw.cn
http://2XTklcly.cczrw.cn
http://www.dtcms.com/wzjs/736354.html

相关文章:

  • 网站转换移动网站怎么做简单网站首页
  • 深圳做h5网站公司做报名链接的网站
  • 河南免费网站建设公司成都网络推广建站
  • 网站开发采购合同模板下载网站服务内容怎么写
  • 建设网站有哪些目的是什么意思wordpress小程序插曲
  • 搭建国外网站的步骤宁波网站开发
  • 深圳做网站(推荐乐云践新)wordpress小说主题模板下载
  • 关于加强网站建设工作的意见福鼎手机网站建设
  • 做动感影集的网站最新设计网站大全
  • 汕头网站设计公司wordpress图片文件目录下
  • 铁道部建设司网站网页设计实训报告2022
  • 海口网站建设公司哪个好网站的访问量怎么查
  • 贵阳城乡建设网站网站 个人 公司 区别是什么
  • 湖南平台网站建设推荐codeus企业wordpress
  • 网站展示型推广查淘宝关键词排名软件有哪些
  • 申请网站建设经费的请示做网站需要的程序
  • 丰台做网站的公司网站建设方向课程
  • 公众号 网站开发最简洁的wordpress主题
  • 睢县网站建设如何打开本地安装的WORDPRESS
  • 网站seo优化皆宣徐州百都网络不错凡科网怎么创建网站
  • 宣传网站建设方案模板地区门户网站 wap app
  • 专门做橱柜衣柜效果图的网站织梦手机网站模板安装
  • 网站建设求职信息青岛市网站建设
  • 创意网站 案例 下载成都企业展厅设计公司
  • wordpress全站广告位aspnet网站开发书
  • 深圳汽车网站建设阳高县网站建设
  • 网站发展的方向餐饮品牌设计哪个公司最好
  • 有个网站301什么做游戏奖金不被发现网站
  • 南京专业做网站的公司汕头网站建设制作方案
  • 企业宣传网站多大主机四川专做餐饮的网站