成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

.NET6中使用GRPC的示例代碼

瀏覽:134日期:2022-06-14 14:16:57
目錄一、簡單使用二、實際應用1.安裝包Grpc.AspNetCore 2.復制文件3.創建GreeterService.cs,直接復制就行了4.在Program.cs中注入5.在項目文件中,增加如下代碼6.運行webapi和剛才的控制臺程序看效果

Supported languages | gRPC,官網。至于原理就不說了,可以百度原理之后,然后再結合代碼,事半功倍,就能很好理解GRPC了。

一、簡單使用

1.使用vs2022創建一個grpc程序,直接就默認值,下一步

2.文件說明

文件1:就是對外面調用的自定義協議,也可以理解是接口,雙方必須規定一致性,把寫的方法暴露出去。

文件2:就是一般寫的方法,業務邏輯。

greet.proto文件

Greeter 定義的服務名字

這里結合下面寫的,SayHello方法名字,HelloRequest請求參數,HelloReply返回的參數

3.此時,默認的程序就是一個服務端,那么我們就創建一個客戶端去訪問它

為了方便我們建立一個控制臺程序,實際情況,什么程序都是可以的

4.客戶端需要安裝3個包

Google.ProtobufGrpc.Net.ClientGrpc.Tools

5. 然后把服務端的這個文件夾整體拿過來放在客戶端下面

這個意思就是,他們有共同的協議,就互通了

6.同理,也把服務端的ItemGroup復制到客戶端

把Server改成Client

千萬別把上面的替換了,這句在最下面

<ItemGroup> <Protobuf Include='Protos\greet.proto' GrpcServices='Client' /> </ItemGroup>

7.然后在Program中調用

using Grpc.Net.Client;using GrpcService1;namespace ClientGRPC{ internal class Program {static void Main(string[] args){ string url = 'https://localhost:5001'; //https using (var channel = GrpcChannel.ForAddress(url)) {var client = new Greeter.GreeterClient(channel);var reply = client.SayHello(new HelloRequest(){ Name = '故里2130'});Console.WriteLine($'結果:message:{reply.Message}'); } Console.ReadKey(); //AppContext.SetSwitch('System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport', true); //http調用 //string url = 'http://localhost:5000'; //using (var channel = GrpcChannel.ForAddress(url)) //{ // var client = new Greeter.GreeterClient(channel); // var reply = client.SayHello(new HelloRequest() // { //Name = '故里2130' // }); // Console.WriteLine($'結果:message:{reply.Message}'); //} //Console.ReadKey();} }}

8.效果

這樣,我們就完成了,簡單的使用過程,和webapi的效果差不多。但是它的速度遠遠大于webapi。

補充:在IOC注入的方式調用GRPC,后面可以參考源碼

二、實際應用

實際中使用,我們應該結合webapi和grpc一起使用的

其實就是把剛才創建的GrpcService1全部遷移到webapi中就行了

1.安裝包Grpc.AspNetCore

2.復制文件

3.創建GreeterService.cs,直接復制就行了using Grpc.Core;using GrpcService1;namespace webapiGRPC.Controllers{ public class GreeterService : Greeter.GreeterBase {private readonly ILogger<GreeterService> _logger;public GreeterService(ILogger<GreeterService> logger){ _logger = logger;}public override Task<HelloReply> SayHello(HelloRequest request, ServerCallContext context){ return Task.FromResult(new HelloReply {Message = 'Hello ' + request.Name });} }}4.在Program.cs中注入using GrpcService1;using webapiGRPC.Controllers;namespace webapiGRPC{ public class Program {public static void Main(string[] args){ var builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddControllers(); // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(); builder.Services.AddGrpc(); var app = builder.Build(); // Configure the HTTP request pipeline. //if (app.Environment.IsDevelopment()) //{ app.UseSwagger(); app.UseSwaggerUI(); //} app.UseHttpsRedirection(); app.UseAuthorization(); app.MapGrpcService<GreeterService>(); app.MapControllers(); app.Run();} }}5.在項目文件中,增加如下代碼

然后點擊生成

如果報錯的話,一定要注意greet.proto中你寫的命名空間,命名空間是什么,那么就引用什么,否則繼承的時候,一直報錯

<ItemGroup> <Protobuf Include='Protos\greet.proto' GrpcServices='Server' /> </ItemGroup>

所有文件

6.運行webapi和剛才的控制臺程序看效果

可以看到,webapi和控制臺程序全部通了

此時,我們就可以全部使用了,對自己的軟件調用GRPC,增加效率。對外部的軟件使用webapi,比較安全

源碼:

Net6GrpcService: Net6GrpcService

到此這篇關于.NET6中使用GRPC的示例代碼的文章就介紹到這了,更多相關.NET6使用GRPC內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: ASP.NET
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
亚洲一区二区免费看| 日韩一区二区电影在线| 日韩一区二区三区在线视频| 国产精品国产三级欧美二区| 亚洲日本欧美天堂| 欧美一级高清片在线观看| 国产一区二区三区四区三区四| 一区二区三区欧美视频| 日韩精品在线一区| 六月天综合网| 欧美午夜不卡影院在线观看完整版免费| 一区二区三区欧美日| 精品国产一区二区三区久久影院| 亚洲一区一卡| 日本在线观看不卡视频| 国产精品视频九色porn| 欧美一级片免费看| 色先锋资源久久综合| 中文网丁香综合网| www.欧美.com| 激情久久久久久久久久久久久久久久| 亚洲色大成网站www久久九九| 激情91久久| 色综合久久综合中文综合网| 国产一区三区三区| 午夜精品视频一区| 国产精品国产馆在线真实露脸 | 午夜精品123| 中文字幕av一区二区三区免费看| 91精品国产综合久久久蜜臀图片| 国产伦精品一区二区三区高清版| 欧美日韩在线精品| www.亚洲人| 成人在线综合网| 紧缚奴在线一区二区三区| 五月综合激情日本mⅴ| 亚洲一二三四久久| 一区二区三区丝袜| 夜夜精品浪潮av一区二区三区 | 国产99久久久久久免费看农村| 日本免费新一区视频| 亚洲一二三区视频在线观看| 亚洲精品成人天堂一二三| 中文字幕乱码一区二区免费| 久久综合色8888| 欧美精品一区二区三区蜜桃| 精品久久国产老人久久综合| 精品国产凹凸成av人网站| 欧美xxxx在线观看| 国产亚洲精品aa午夜观看| 中文字幕 久热精品 视频在线| 国产精品欧美一级免费| 亚洲人成在线观看一区二区| 亚洲国产日韩在线一区模特| 日韩精品91亚洲二区在线观看| 亚洲成a人v欧美综合天堂 | 欧美在线亚洲| 韩国一区二区三区在线观看| 亚洲特色特黄| 免费永久网站黄欧美| 色乱码一区二区三区88| 国产精品亚洲综合久久| 中文字幕一区二区三区在线播放 | 韩国v欧美v亚洲v日本v| 激情欧美一区二区| 国产麻豆视频精品| 成人sese在线| 欧美日韩爆操| 久久国产直播| 日韩视频免费观看高清完整版在线观看 | 国产在线精品国自产拍免费| 国产电影一区二区三区| 成人av电影观看| 亚洲国产免费| 欧美视频你懂的| 久久婷婷国产综合精品青草| 亚洲免费在线观看| 美女视频黄久久| 9人人澡人人爽人人精品| 国产一区二区中文字幕免费看| 亚洲日韩视频| 欧美又粗又大又爽| 日韩精品一区二区三区在线| 国产精品全国免费观看高清| 午夜精品久久久久久久| av网站免费线看精品| 久久久xxx| 亚洲精品在线观| 天天综合色天天综合色h| 成人av网址在线| 香蕉免费一区二区三区在线观看| 欧美一区二区三区免费| 一区二区三区在线观看网站| 国产91高潮流白浆在线麻豆 | 欧美本精品男人aⅴ天堂| 亚洲乱码国产乱码精品精98午夜 | 91久久免费观看| 久久综合久久综合九色| 亚洲一线二线三线视频| 国内精品久久久久影院薰衣草| 欧美亚洲不卡| 666欧美在线视频| 亚洲精品高清视频在线观看| 成人精品一区二区三区四区| 一本色道久久综合亚洲aⅴ蜜桃 | 亚洲欧洲性图库| 免费成人在线视频观看| 国产自产在线视频一区| 欧美www视频| 久久国产尿小便嘘嘘尿| 国产视频不卡| 国产精品国产馆在线真实露脸| 精品一区二区三区蜜桃| 性色一区二区三区| 中文字幕视频一区二区三区久| 成人精品在线视频观看| 老司机精品久久| 国产精品免费看片| 国产98色在线|日韩| 色哟哟国产精品| 亚洲毛片av在线| 99久久er热在这里只有精品66| 久久精品中文| 亚洲一区二区三区不卡国产欧美| 欧美在线视频二区| 久久影院午夜片一区| 国产成人av一区| 欧美精品精品一区| 蜜桃视频一区二区| 在线欧美日韩精品| 蜜桃精品在线观看| 欧美伊人久久大香线蕉综合69| 日韩精品亚洲一区二区三区免费| 国产欧美69| 亚洲国产精品久久久男人的天堂| 亚洲激情一区二区三区| 精品久久久久久久久久久院品网| 国产一区二区三区四区五区入口 | 国产视频一区二区在线| 成人一区二区三区| 欧美大片在线观看一区二区| 国产精品一色哟哟哟| 91精品国产综合久久久久久久| 久久99精品国产| 欧美精品久久一区二区三区| 国产精品伊人色| 日韩欧美视频在线| 91免费小视频| 亚洲蜜臀av乱码久久精品蜜桃| 亚洲全部视频| 一区二区三区精品| 在线精品亚洲一区二区不卡| 精品无人码麻豆乱码1区2区 | 欧美一区二区三区日韩视频| 成人激情开心网| 久久久久9999亚洲精品| 激情久久久久久久| 亚洲精品欧美专区| 国产亚洲欧美一区二区三区| 日韩成人免费在线| 欧美一区二区三区免费在线看| 99国产精品久久久久久久久久| 欧美国产精品一区二区三区| 国产精品久久久久9999高清| 麻豆视频观看网址久久| 精品国产99国产精品| 亚洲高清电影| 久久国产精品第一页| 精品国产乱码久久久久久1区2区| 欧美久久久久| 男人的天堂久久精品| 日韩欧美一级二级| 欧美日韩一卡| 亚洲aⅴ怡春院| 91精品国产综合久久久久久漫画| 欧美在线视频一区二区三区| 亚洲国产精品自拍| 337p亚洲精品色噜噜| 好吊日精品视频| 免费高清视频精品| 久久久久国产精品麻豆ai换脸| 亚洲一区二区三区免费观看 | 在线视频国内自拍亚洲视频| 欧美三级日韩在线| 亚洲综合在线第一页| 蜜桃av综合| 国产精品资源站在线| 欧美一级日韩免费不卡| 日本不卡一区二区| 日日夜夜一区二区| av一区二区不卡| 91麻豆自制传媒国产之光| www.爱久久.com| 99国产精品久久久久久久久久| 亚洲日本在线观看| 亚洲色大成网站www久久九九| 国产精品久久久久久亚洲伦| 国产一区二区三区无遮挡| 欧美三区视频| 一区视频在线|