.NET Core(.NET6)中gRPC使用
目录
- 一、简介
- 二、创建gRPC服务端
- 1.创建gRPC项目
- 2.编写自己的服务
- 三、创建gRPC客户端
- 1.创建客户端项目
- 2.grPC服务https的调用
- 3.gRPC内网http调用
- 4.IOC注入的方式调用gRPC
- 四、webapi中加入gRPC
回到顶部回到顶部回到顶部回到顶部
四、webapi中加入gRPC
通常我们的服务有对外提供对外接口,又要对内提供gRPC服务,那怎么做呢,下面在webapi中加入gRPC服务
1.创建asp.net core mvc项目
2.安装nuget包
Grpc.AspNetCore
3.添加protebuf文件
把上面的proto文件复制过来
4.添加Service
public class OrderService : Order.OrderBase
{
private readonly ILogger _logger;
public OrderService(ILogger logger)
{
_logger = logger;
}
///
/// 创建订单
///
///
///
///
public override Task CreateOrder(CreateRequest request, ServerCallContext context)
{
//报存数据库 todo
return Task.FromResult(new CreateResult
{
Result = true,
Message = "订单创建成功"
});
}
///
/// 查询订单
///
///
///
///
public override Task QueryOrder(QueryRequest request, ServerCallContext context)
{
//查询数据库 //todo
return Task.FromResult(new QueryResult
{
OrderInfo = new OrderInfo
{
Id = request.Id,
OrderNo = DateTime.Now.ToString("yyyyMMddHHmmss"),
OrderName = "冰箱",
Price = 1288
}
});
}
}
5.注册gRPC服务
在Program.cs文件中
到这里,就把gRPC加入到webapi里面了。
6.验证
启动asp.net core mvc程序
浏览器能访问,证明 restful api是没问题的。
然后再用上面的客户端访问一下gRPC的服务。
结果:
这样就成功对外提供api接口和对内提供gRPC服务了。
源码地址:https://github.com/weixiaolong325/GrpcDemo.Service
转 https://www.cnblogs.com/wei325/p/16128279.html