热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CloudEndPointGRPC与原型定义不匹配-CloudEndPointGRPCdontmatchprotodefinition

ImusingGoogleCloudEndPointstoaccessmyGRPCserverwritteninGoLangthatruninKuberkules.

I'm using Google Cloud EndPoints to access my GRPC server written in GoLang that run in Kuberkules. I was following the tutorial for here. Everythings is working but when i try to the a request i got this error

我正在使用Google Cloud EndPoints访问使用Kuberkules运行的GoLang编写的GRPC服务器。我在这里按照教程。 Everythings工作,但当我尝试一个请求时,我得到了这个错误

rpc error: code = NotFound desc = Method does not exist.

rpc错误:code = NotFound desc =方法不存在。

The EndPoint does not have the save URL has the one in my proto file , the have the package include in the name. Here is an exemple :

EndPoint没有保存URL在我的proto文件中有一个,包含在名称中的包。这是一个例子:

log request

记录请求

on the last request i change the value of the url in the generated protobuf file, it pass the endpoint but my server dont recognize it ... I got this error instead :

在最后一个请求我更改生成的protobuf文件中的URL的值,它通过端点,但我的服务器不认识它...我得到此错误:

rpc error: code = Unimplemented desc = unknown service client.WebRoute

protobuf generated code

protobuf生成的代码

It was working locally , this is probably an issue about the descriptor files needed to generate the endpoints.

它在本地工作,这可能是生成端点所需的描述符文件的问题。

1 个解决方案

#1


0  

You cannot change the URL in the generated file. gRPC spec defines the HTTP path is Service-Name "/" {method name}. The Service-Name for protobuf is ?( {proto package name} "." ) {service name}. You can change your proto file and regenerate the descriptors and your Go code to match what path you want.

您无法更改生成的文件中的URL。 gRPC规范定义HTTP路径是Service-Name“/”{method name}。 protobuf的服务名称是?({proto package name}“。”){service name}。您可以更改原型文件并重新生成描述符和Go代码以匹配您想要的路径。


推荐阅读
  • Microsoft即将发布WPF/E的CTP(Community Technology Preview)和SDK,标志着RIA(Rich Internet Application)技术的新里程碑。更多详情及下载链接请参见MSDN官方页面。 ... [详细]
  • 本文介绍了如何通过扩展 Panel 控件来实现滚动条位置的自动保存和恢复。类似于 Page 的 MaintainScrollPositionOnPostBack 属性,我们将在自定义的 TBPanel 控件中添加相同的功能。 ... [详细]
  • 详细指南:使用IntelliJ IDEA构建多模块Maven项目
    本文在前两篇文章的基础上,进一步指导读者如何在IntelliJ IDEA中创建和配置多模块Maven项目。通过详细的步骤说明,帮助读者掌握项目模块化管理的方法。 ... [详细]
  • YB02 防水车载GPS追踪器
    YB02防水车载GPS追踪器由Yuebiz科技有限公司设计生产,适用于车辆防盗、车队管理和实时追踪等多种场合。 ... [详细]
  • Java Servlet中获取客户端IP与MAC地址的方法
    本文介绍了一种在Java Servlet应用中获取客户端IP地址及MAC地址的技术实现方法,通过示例代码详细解析了获取过程中的关键步骤和技术点。 ... [详细]
  • Java EE CDI:解决依赖关系冲突的实例
    在本教程中,我们将探讨如何在Java EE的CDI(上下文和依赖注入)框架中有效解决依赖关系的冲突问题。通过学习如何使用限定符,您将能够为应用程序的不同客户端提供多种接口实现,并确保每个客户端都能正确调用其所需的实现。 ... [详细]
  • Asp.net MVC 中 Bundle 配置详解:合并与压缩 JS 和 CSS 文件
    本文深入探讨了 Asp.net MVC 中如何利用 Bundle 功能来合并和压缩 JavaScript 和 CSS 文件,提供了详细的配置步骤和示例代码,适合开发人员参考学习。 ... [详细]
  • NFS(Network File System)即网络文件系统,是一种分布式文件系统协议,主要用于Unix和类Unix系统之间的文件共享。本文详细介绍NFS的配置文件/etc/exports和相关服务配置,帮助读者理解如何在Linux环境中配置NFS客户端。 ... [详细]
  • Spring Cloud Config 使用 Vault 作为配置存储
    本文探讨了如何在Spring Cloud Config中集成HashiCorp Vault作为配置存储解决方案,基于Spring Cloud Hoxton.RELEASE及Spring Boot 2.2.1.RELEASE版本。文章还提供了详细的配置示例和实践建议。 ... [详细]
  • 本文探讨了Web开发与游戏开发之间的主要区别,旨在帮助开发者更好地理解两种开发领域的特性和需求。文章基于作者的实际经验和网络资料整理而成。 ... [详细]
  • 本文探讨了浏览器的同源策略限制及其对 AJAX 请求的影响,并详细介绍了如何在 Spring Boot 应用中优雅地处理跨域请求,特别是当请求包含自定义 Headers 时的解决方案。 ... [详细]
  • 本文将详细探讨 Linux 系统中的 netstat 命令,该命令用于查看网络状态和连接情况。通过了解 IP 地址和端口的基本概念,我们将更好地理解如何利用 netstat 命令来监控和管理网络服务。 ... [详细]
  • 本文详细介绍了Linux操作系统中的cp和scp命令,包括它们的基本使用方法、常见选项以及如何通过scp命令安全地在不同主机之间传输文件。 ... [详细]
  • Canvas漫游:碰撞检测与动画模拟
    探索Canvas在Web开发中的应用,通过碰撞检测与动画模拟提升交互体验。 ... [详细]
  • ServletContext接口在Java Web开发中扮演着重要角色,它提供了一种方式来获取关于整个Web应用程序的信息。通过ServletContext,开发者可以访问初始化参数、共享数据以及应用资源。 ... [详细]
author-avatar
Tong-david
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有