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

做网站给客户聊天记录网站建设案例

做网站给客户聊天记录,网站建设案例,深圳建设工程网,官网设计企业使用gRPC实现客户端和服务端通信 参考文档: 基于C#的GRPC 1 创建项目和文件夹 GrpcClientDemoGrpcServerDemoProtos解决方案和文件夹1.1 添加nuget依赖 客户端和服务器都要有依赖和gRPC_Objects文件夹 <ItemGroup><PackageReference Include"Google.Protobu…

使用gRPC实现客户端和服务端通信

参考文档:

基于C#的GRPC

1 创建项目和文件夹

GrpcClientDemoGrpcServerDemoProtos解决方案和文件夹

1.1 添加nuget依赖

客户端和服务器都要有依赖和gRPC_Objects文件夹

 <ItemGroup><PackageReference Include="Google.Protobuf" Version="3.25.2" /><PackageReference Include="Grpc" Version="2.46.6" /><PackageReference Include="Grpc.Core" Version="2.46.6" /><PackageReference Include="Grpc.Tools" Version="2.46.6"><PrivateAssets>all</PrivateAssets><IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets></PackageReference></ItemGroup><ItemGroup><Protobuf Include="../Protos/*.proto" OutputDir="%(RelativePath)gRPC_Objects"></Protobuf></ItemGroup><ItemGroup><Folder Include="gRPC_Objects\" /></ItemGroup>

1.2 添加hello.proto

syntax = "proto3";message HelloRequest{string firstName=1;string lastName=2;
}message HelloResponse{string message=1;
}service HelloService{rpc Welcome(HelloRequest) returns (HelloResponse);
}

编译会自动生成代码

2 创建服务端代码

GServices/HelloServiceImpl.cs

using Grpc.Core;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static HelloService;namespace GrpcServerDemo.GServices
{public class HelloServiceImpl:HelloServiceBase{public override Task<HelloResponse> Welcome(HelloRequest request, ServerCallContext context){var message = $"你好 {request.FirstName} {request.LastName}";return Task.FromResult(new HelloResponse { Message = message });                          //return base.Welcome(request, context);}}
}

Program.cs

using Grpc.Core;
using GrpcServerDemo.GServices;namespace GrpcServerDemo
{internal class Program{static async Task Main(string[] args){Server server = new Server(){Ports = {new ServerPort("localhost",7777,ServerCredentials.Insecure)},Services = {HelloService.BindService(new HelloServiceImpl())}               };try{server.Start();Console.WriteLine($"server is listening to port 7777");Console.ReadKey();}catch (Exception ex){Console.WriteLine($"an error has been thrown: {ex}");}finally{if (server != null){await server.ShutdownAsync();}}}}
}

3 创建客户端代码

Program.cs


using Grpc.Core;namespace GrpcClientDemo
{internal class Program{static async Task Main(string[] args){Channel channel = new Channel("localhost:7777",ChannelCredentials.Insecure);try{await  channel.ConnectAsync();Console.WriteLine("the client connected successfully to the sever");var client=new HelloService.HelloServiceClient(channel);HelloResponse helloResponse = await client.WelcomeAsync(new HelloRequest{FirstName="xie",LastName="万能"});Console.WriteLine("接受到数据:"+helloResponse.Message);Console.ReadKey();}catch (Exception ex){Console.WriteLine($"an error has been thrown: {ex}");}finally{if(channel != null){await channel.ShutdownAsync();}}}}
}
http://www.tj-hxxt.cn/news/119938.html

相关文章:

  • 上海微网站建设seo系统优化
  • wordpress xampp建站搜索引擎排名优化价格
  • 建设用地规划许可证查询网站友情链接交换方式有哪些
  • 电商网站开发需要掌握哪些知识技能凌哥seo技术博客
  • 北京网站制作合肥爱站网站排行榜
  • 南京个人网站建设长沙网站制作推广
  • 在哪里自己建设网站重庆店铺整站优化
  • 怎么建设公司网站竞价排名点击
  • 专门做广东11选5的网站优化网站推广
  • 成都j网站制作南京百度seo代理
  • 个人做论坛网站有哪些湖南正规关键词优化
  • 太原做网站需要多少钱网络精准推广
  • 承德网站建设专家下载百度官方版
  • 炫酷的html5网站cba目前排行
  • 天津手网站开发如何快速推广网站
  • 百度竞价怎么开户上海seo推广方法
  • 做网站长尾词网络营销和传统营销的区别有哪些
  • thinkphp手机网站制作互联网营销师是干什么
  • 做家装的网站有哪些杭州seo网站建设靠谱
  • 建设银行网站怎么看交易记录有没有免费的crm系统软件
  • 洪梅镇做网站百度推广客户端怎么登陆
  • 网站开发税率税种发软文是什么意思
  • 做物流的网站单页面seo搜索引擎优化
  • 商务网站建设公司排名荆门网络推广
  • 上海做网站比较有名的公司搜索大全引擎入口网站
  • 网站的网站制作宁波seo推广优化怎么做
  • h5页面怎么制作免费谷歌广告优化师
  • 用织梦做的网站ftp怎么登陆seod的中文意思
  • asp网站开发实验总结电商是做什么的
  • 海南网站建设公司哪家靠谱优化大师官方免费下载