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

app网站制作软件营销软文800字范文

app网站制作软件,营销软文800字范文,户外旅游网站模板,黄冈做网站的公司哪家好看到一个文章[Go] 不到 100 行代码实现一个支持 CONNECT 动词的 HTTP 服务器 在NET8中如何实现 创建项目为MiniApi 编辑Program.cs文件。 var builder WebApplication.CreateSlimBuilder(args);var app builder.Build();// 将HTTP请求通过协议升级机制转为远程TCP请求&…

看到一个文章[Go] 不到 100 行代码实现一个支持 CONNECT 动词的 HTTP 服务器
在NET8中如何实现
创建项目为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();

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:5199

HTTP CONNECT 客户端请求方式

CONNECT 127.0.0.1:1000 HTTP/1.1
Host: 127.0.0.1:1000
Proxy-Authorization: basic aGVsbG86d29ybGQ=

如下是数据传输示意图。
在这里插入图片描述

http://www.tj-hxxt.cn/news/113319.html

相关文章:

  • 网站搜索引擎优化方法百度搜索入口
  • 青海网站建设设计济南今日头条最新消息
  • 做网站php软件淘宝客推广一天80单
  • 网站icp备案费用营销型网站策划书
  • 网站开发平台开发做教育培训应该注册什么公司
  • 专门做网站开发的公司东莞网站建设推广
  • 在线海报免费制作郑州专业seo哪家好
  • 山西建设局网站首页阿亮seo技术顾问
  • 如何将自己做的网站上传发布外链的步骤
  • 做淘宝客要自己的网站2023北京封控了
  • 网站备案手机号跨国网站浏览器
  • 网站发产品ps怎么做产品图韶山百度seo
  • 莆田网站建设培训想做网络推广的公司
  • 大连做网站一般给多大空间百度网络营销
  • 网站建设在哪里系统优化大师官方下载
  • 做网站用com还是cn好昆明seo排名
  • 网站开发入门书关键词筛选
  • 个人邮箱注册申请windows优化软件
  • wordpress商城多重分类sem 优化价格
  • 厦门国外网站建设公司哪家好seo俱乐部
  • 网站建设对策免费获客软件
  • 网站建设工作分解结构词典中央下令全国各地核酸检测
  • 一个好的营销型网站模板公众号怎么推广
  • 上海中小企业服务中心官网郑州seo技术博客
  • 小程序开发平台竞品分析枫树seo网
  • 南昌网站优化公司关键词seo培训
  • 学校网站建设申请手机百度问一问
  • 网站建设 软件开发的公司排名百度科技有限公司
  • 徐州网络推广seo臻系统
  • 2018政府网站建设 会议销售渠道都有哪些