gpt4 book ai didi

c# - 在 .Net Core 中将 HTTP/JSON 转码为 gRPC

转载 作者:行者123 更新时间:2023-12-02 03:26:28 26 4
gpt4 key购买 nike

我最近发现可以对 gRPC 服务器进行“转码”,以便它可以接收 HTTP/JSON 请求以及 gRPC 请求。我相信这将允许用户使用普通的 NetCore HTTP 客户端向 gRPC 服务器发送请求(当然使用 protobuf)。我已经在其他语言(主要是 Go)中看到了这种实现,但我还没有看到任何关于如何在 .NetCore 和 C# 中完成此操作的信息。您知道如何实现这一目标吗?

这是有关该主题的 Goggle 官方文档:https://cloud.google.com/endpoints/docs/grpc/transcoding

非常感谢

最佳答案

我认为最好的方法是使用 google api HTTP 选项并配置 Envoy 代理来进行转码。

我之前根据Christophe Hesters'上的信息得到了这个工作。博客。

但是,部署有点繁琐(尤其是在 Windows 上,这是我开发的平台)。

我用于调试的第一种方法是:

  • 运行 WSL Ubuntu/WSL 2 Ubuntu/Ubuntu VM
  • 在 Linux 中安装 docker
  • 运行envoyproxy/envoy
  • 在主机上手动运行 gRPC 服务

您可以使用 docker(如果在 Windows 上则为桌面)/docker-compose 进行更便携的设置,其中 Envoy 和您的服务都作为容器运行。

根据你的问题,我刚刚发现Microsoft.AspNetCore.Grpc.HttpApi 。目前它只是一个 WIP 预览版,但看起来是一个更容易上手的选项。

关于c# - 在 .Net Core 中将 HTTP/JSON 转码为 gRPC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59747504/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com