最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何在?ASP.NET?Core?中創(chuàng)建?gRPC?客戶端和服務(wù)器

 更新時(shí)間:2024年11月25日 09:00:27   作者:shiningrise  
gRPC 是一種高性能、開源的遠(yuǎn)程過(guò)程調(diào)用(RPC)框架,它基于 Protocol Buffers(protobuf)定義服務(wù),并使用 HTTP/2 協(xié)議進(jìn)行通信,這篇文章主要介紹了在?ASP.NET?Core?中創(chuàng)建?gRPC?客戶端和服務(wù)器,需要的朋友可以參考下

前言

gRPC 是一種高性能、開源的遠(yuǎn)程過(guò)程調(diào)用(RPC)框架,它基于 Protocol Buffers(protobuf)定義服務(wù),并使用 HTTP/2 協(xié)議進(jìn)行通信。

新建項(xiàng)目

新建解決方案GrpcDemo

新建webapi項(xiàng)目GrpcServer作為grpc服務(wù)端項(xiàng)目

添加包

    <PackageReference Include="Grpc.AspNetCore" Version="2.67.0" />
    <PackageReference Include="Grpc.Tools" Version="2.67.0">

新建文本文件greeter.proto

syntax = "proto3";
option csharp_namespace = "GrpcServer";
package greet;
// The greeting service definition.
service Greeter {
  // Sends a greeting
  rpc SayHello (HelloRequest) returns (HelloReply);
}
// The request message containing the user's name.
message HelloRequest {
  string name = 1;
}
// The response message containing the greetings.
message HelloReply {
  string message = 1;
}

編輯GrpcServer項(xiàng)目文件,添加

新建類GreeterService.cs

using Grpc.Core;
namespace GrpcServer
{
    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
            });
        }
    }
}

修改Program.cs

using GrpcServer;
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();
app.MapGrpcService<GreeterService>();
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
    app.UseSwagger();
    app.UseSwaggerUI();
}
app.UseHttpsRedirection();
app.UseAuthorization();
app.MapControllers();
app.Run();

就是添加下面兩行代碼

builder.Services.AddGrpc();
app.MapGrpcService<GreeterService>();

新建grpc客戶端項(xiàng)目GrpcClient

添加包

    <PackageReference Include="Google.Protobuf" Version="3.28.3" />
    <PackageReference Include="Grpc.Net.Client" Version="2.67.0" />
    <PackageReference Include="Grpc.Tools" Version="2.67.0">

復(fù)制服務(wù)器端端的greeter.proto到客戶端項(xiàng)目

編輯GrpcClient項(xiàng)目文件,加

編輯Program.cs文件

using Grpc.Net.Client;
using GrpcClient;
using var channel = GrpcChannel.ForAddress("https://localhost:7052");
var client = new Greeter.GreeterClient(channel);
var reply = await client.SayHelloAsync(
                  new HelloRequest { Name = "wxy" });
Console.WriteLine("Greeting: " + reply.Message);
Console.WriteLine("Press any key to exit...");
Console.ReadKey();

7052改成你的服務(wù)器端運(yùn)行端口

結(jié)果展示

運(yùn)行服務(wù)器端

運(yùn)行客戶端

到此這篇關(guān)于在 ASP.NET Core 中創(chuàng)建 gRPC 客戶端和服務(wù)器的文章就介紹到這了,更多相關(guān)ASP.NET Core gRPC 客戶端和服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用Python實(shí)現(xiàn)Word文檔文本格式化的完整指南

    使用Python實(shí)現(xiàn)Word文檔文本格式化的完整指南

    這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)Word文檔文本格式化,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2026-03-03
  • Tensorflow、Keras與Python版本兼容性完全解析

    Tensorflow、Keras與Python版本兼容性完全解析

    在深度學(xué)習(xí)的開發(fā)過(guò)程中,TensorFlow和Keras作為最流行的深度學(xué)習(xí)框架,已經(jīng)成為了眾多開發(fā)者和研究人員的首選,這篇文章主要介紹了Tensorflow、Keras與Python版本兼容性的相關(guān)資料,需要的朋友可以參考下
    2025-11-11
  • python連接FTP服務(wù)器的實(shí)現(xiàn)方法

    python連接FTP服務(wù)器的實(shí)現(xiàn)方法

    本文主要介紹了python連接FTP服務(wù)器的實(shí)現(xiàn)方法,主要使用ftp操作進(jìn)行連接FTP服務(wù)器、獲取當(dāng)前目錄文件清單、上傳文件等操作,具有一定的參考價(jià)值,感興趣的可以了解一下
    2022-06-06
  • Python中__str__()方法的實(shí)用技巧分享

    Python中__str__()方法的實(shí)用技巧分享

    在Python編程中,__str__()是一個(gè)特殊方法,它允許自定義對(duì)象的字符串表示形式,本文將深入探討__str__()的相關(guān)實(shí)用技巧,希望對(duì)大家有所幫助
    2023-11-11
  • Python基于socket實(shí)現(xiàn)TCP客戶端和服務(wù)端

    Python基于socket實(shí)現(xiàn)TCP客戶端和服務(wù)端

    這篇文章主要介紹了Python基于socket實(shí)現(xiàn)的TCP客戶端和服務(wù)端,以及socket實(shí)現(xiàn)的多任務(wù)版TCP服務(wù)端,下面相關(guān)操作需要的小伙伴可以參考一下
    2022-04-04
  • pytest官方文檔解讀fixtures的autouse

    pytest官方文檔解讀fixtures的autouse

    這篇文章主要為大家介紹了pytest官方文檔解讀fixtures的autouse,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Python高效計(jì)算上周五到任意日期的完全指南

    Python高效計(jì)算上周五到任意日期的完全指南

    在業(yè)務(wù)系統(tǒng)開發(fā)中,日期計(jì)算是高頻且關(guān)鍵的需求,這篇文章將高效計(jì)算上周五到任意日期的方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下
    2025-08-08
  • python進(jìn)程結(jié)束后端口占用問題解析

    python進(jìn)程結(jié)束后端口占用問題解析

    這篇文章主要為大家介紹了python中在進(jìn)程結(jié)束后端口依然被占用的問題解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-01-01
  • Python之字符串的遍歷的4種方式

    Python之字符串的遍歷的4種方式

    這篇文章主要介紹了Python之字符串的遍歷的4種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • pandas選擇或添加列生成新的DataFrame操作示例

    pandas選擇或添加列生成新的DataFrame操作示例

    這篇文章主要為大家介紹了pandas選擇或添加列生成新的DataFrame實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05

最新評(píng)論

竹溪县| 泾阳县| 金塔县| 镇赉县| 景洪市| 青冈县| 安仁县| 嘉义县| 吉水县| 桃江县| 进贤县| 多伦县| 东乌珠穆沁旗| 上栗县| 苍山县| 蓬溪县| 渝中区| 婺源县| 新平| 临洮县| 湖北省| 巴东县| 西丰县| 壤塘县| 厦门市| 共和县| 丹凤县| 大渡口区| 扶沟县| 大悟县| 新田县| 卢湾区| 通城县| 达孜县| 综艺| 铜山县| 德阳市| 张家川| 邹城市| 元氏县| 闻喜县|