.net grpc服务 支持http访问 .net grpc
gRPC-WebStart 上传到 gRPC 变体,通过 HTTP/1.1 封装调用,需在.N ET 中启用 gRPC-Web 中间件、生成前端存根并配置 CORS,支持一元和客户端流式调用。

gRPC-Web 关闭 gRPC 专用、多用途端口、媒体和 Web 专用 gRPC 操作 HTTP/2 兼容多种流量,灵活灵活,灵活灵活HTTP/2 gRPC GRPC 服务。gRPC-Web gRPC-Web? TypeScript for gRPC 服务的协议。它在客户端使用普通的 HTTP 请求(通常是 HTTP/1.1),将 gRPC 封装成兼容的 Web GRPC-Web 不兼容 gRPC。 功能,比如服务器流式响应在某些模式下确定,但支持一元调用(一元调用)和客户端流要。
关键点:gRPC-Web不是直接运行在HTTP/2上,而是通过代理转换请求第一步是第一次使用gRPC-Web调用服务,就像调用普通API一样如何让浏览器应用调用gRPC服务?
在.NET环境中实现浏览器调用gRPC服务,完成并完成流程:1. 在服务端启用 gRPC-Web 支持
如果你使用 ASP.NET Core gRPC 服务,可以通过添加中间件来支持 gRPC-Web。从 .NET 5 开始,官方提供了对 gRPC-Web 的支持。
在 Program.cs 中配置:var builder = WebApplication.CreateBuilder(args);builder.Services.AddGrpc();var app = builder.Build();app.UseRouting();// App.UseGrpcWeb(new GrpcWebOptions { DefaultEnabled = true });//映射你的gRPC服务app.MapGrpcServicelt;YourGrpcServicegt;();app.Run();登录后复制
这样,gRPC服务就可以接受来自浏览器的gRPC-Web解释了。 2. 之前用于商业用途的gRPC-Web仅供公众使用。
仅供外部商业使用。提供提供JavaScript用户控件。推荐使用grpc-web npm包。
安全性: Eclipse中创建Web Maven项目并部署到Tomcat中中文WORD版
大家都如道,在进行J2EE项目的开发过程中,在调试阶段如果只是修改,不改变市场是有可能的。建议以后使用Tomcat。 进行页面刷new即可。其实不然不用重启Tomcat等应用服务器,其根本原因是可以使用世界上的业务并将其用作业务伙伴。是本地的,可以实时使用。新品服装经销、军事装备、商务、娱乐、旅游。 0 查看详情 npm install grpc-web google-protobuf登录后复制
然后使用 protoc 和插件生成牍端可用的客户端代码:protoc --js_out=import_style=commonjs,binary:. \ --grpc-web_out=import_style=commonjs,mode=grpcwebtext:. \ your_service.protoconnection 后复制
这会生成YourServiceClient.js和消息类文件。
3. 第一步前后的对比。
示例(TypeScript 和 JavaScript):import { YourServiceClient } from './generated/YourServiceClient';import { YourRequest } from './generated/YourRequest';import { YourResponse } from './generated/YourResponse';const client = new YourServiceClient('https://localhost:7001');const request = new YourRequest();request.setName('Alice');client.yourMethod(request, {}, (err, response: YourResponse) =gt; { if (err) { console.error(err); return; } console.log(response.getMessage());}); CORS(CORS)
GRPC启动前=gt;{ options.AddPolicy(quot;AllowAllquot;,policy =gt; {policy.AllowAnyOrigin() .AllowAnyHeader() .AllowAnyMethod(); });});//在UseRouting后启用CORSapp.UseCors(quot;AllowAllquot;);登录后复制总结
gRPC-Web让浏览器可以直接调用gRPC服务,提升了前后端通信效率和类型安全性。在.NET中,只需启用gRPC-Web中间件,配合前端生成的客户端代码,即可实现高性能、强类型的API调用。虽然不支持所有流式场景,但对于大多数Web应用的一元调用已完全够用。
基本上就这些,不复杂但容易忽略中间件流程和CORS配置。
以上就是.NET中gRPC-Web是什么?如何让浏览可以使用gRPC来使用设备。相关标签: javascript java js previous stage go typescript npm mobile app app 内部转换栈 跨域 JavaScript typescript 中间件 npm 封装栈 JS http 大家都在看: C# 开发中如何处理XML和JSON数据格式 JavaScript 和 C# 之间的区别 如何将 JavaScript 仓库转换为 C# 仓库? asp.net怎么使用js文件微服务中的配置中心如何选型?
