问题标签 [grpc-web]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
grpc - 用于 gRPC-Web 的 grpc_cli
是否有任何 CLI 可以调用像 grpc_cli 这样的 gRPC-Web 服务?
我想测试我们在 AWS 上运行的 gRPC-Web 服务。我无法使用 grpc_cli,因为 gRPC 服务位于私有子网中且无法访问(我无法将服务放在不支持 Http/2 的 ELB 后面)。
grpc - improbable-eng/grpc-web 响应关闭,没有标题
我有一个使用 gRPC 的服务器,在反应客户端上我正在使用带有 grpcwebproxy 的 grpc web,我一直在尝试将我的客户端连接到服务器,但不断收到错误代码 2,并显示消息:响应关闭,没有标题。有没有其他人遇到过这个问题?我目前正在使用 grpc-web 的 improbable-eng 实现。
javascript - 如何将尾随元数据从 python gRPC 服务发送到 grpc-web 客户端?
我正在尝试将尾随元数据从 python gRPC 服务发送到 grpc-web 客户端。但在客户端我无法收到它。
我正在使用特使代理服务器将 grpc-web 与 python gRPC 服务连接起来。
为了发送元数据,我使用这种方法:
在客户端我试图以这种方式访问元数据:
我正在发送它是如何在文档中描述的。但是元数据没有到达。
有人遇到过这样的问题吗?
google-kubernetes-engine - 从浏览器 (grpc-web) 调用 GKE(Cloud Endpoints 和 ESP)上的 gRPC 服务时出现问题
问题简介
我有一个在 GKE 中运行的 gRPC 服务。我正在使用 Cloud Endpoints 并在其前面有一个 ESP(可扩展服务代理),我想用它来处理身份验证(JWT 令牌)。
这听起来像是将所有这些工具集成在一起的一种非常好的方式,但是在过去的两天里,我一直无法让它工作。在本地运行时,我可以完美地连接和拨打电话,但事实证明,通过 ESP 很难设置。
注意:我最终想打开一个 http2 端口,但我现在的重点是获得浏览器支持,所以我只是打开了 http 端口
K8s 部署和服务配置
我的服务正在运行和工作,我正在使用这个清单部署它
所以我最初只是使用我自己的 nginx 代理,但我决定想要 Endpoints 的功能。有了这个和很多错误,我得到了 ESP 的所有 Cors 参数。
这是带有身份验证设置的配置
使用 Node/React 调用服务
所以一旦它运行和部署,我使用我的 React 应用程序像这样点击服务
从这里,我得到了这个错误
但在这一点上,我很困惑。这是来自 ESP pod 的日志(我无法阅读)
对我来说,似乎 ESP 拒绝了这些呼叫并说它们是被禁止的(可能没有经过身份验证??)。但在这一点上,我被难住了。我真的不知道该往哪里看。我会很感激任何帮助,如果有必要可以提供更多信息!
firebase - 使用 Cloud Endpoints 和 Firebase 调用 ESP 时出现“409 Audience not allowed”错误
我一直在开发一个 gRPC 服务,该服务需要能够接收来自经过 Firebase 身份验证的浏览器的调用。在出现此 409 错误之前,我一切正常,但似乎找不到更多信息。
我现在会尽力提供尽可能多的信息。
编码
这是我的 k8s 清单
我的端点配置
这是我的服务配置的链接
这就是我调用 API 的方式
错误
所以此时我在浏览器中收到此错误
这是来自/var/log/nginx/error.log的相关内容(但不是全部,我认为这应该足够了)
我真的不确定如何进一步调试。我试着查了一下,我能找到的唯一文档说也许 Firebase 在标题中设置了不正确的“aud”值?任何见解将不胜感激!
grpc - gRPC-Web 将 JSON 作为字符串发送
我需要将嵌套 JSON 对象的数据从 gRPC-web 发送到后端 Golang 服务器。我最终将 JSON 作为字符串转换并发送到后端服务器,并将字符串转换回后端服务器中的 JSON。这是一个好习惯还是有任何其他解决方案来传输 JSON。
google-kubernetes-engine - Istio gRPC-Web 配置
我正在尝试公开一个 gRPC 后端服务,该服务是.NETCORE3.0
用 linux docker 映像编写并打包的。我在 localhost 中测试了该服务,一切都按预期工作。但是,我无法使用 istio 从 GKE 访问(我已将我的 GKE 集群更新到 2019 年 7 月 27 日的最新版本)。我正在使用gRPC-Web
with使用服务react.js
。每次我503
尝试访问时都会出错。查看 istioingress 日志,我看到这一行与503
:
我下面的配置有什么问题吗?
这是来自 mcr.microsoft.com/dotnet/core/aspnet:3.0-buster-slim AS base WORKDIR /app EXPOSE 80 EXPOSE 443 的 Dockerfile
javascript - 如何将枚举值转换为 grpc-web 中的字符串
我一直在使用 React-Redux 和 gRPC 开发一个 Web 应用程序。服务器将前端接收到的 gRPC 消息与整数形式的枚举一起发送给前端。如何将这些整数值转换为相应的字符串值?
我已经尝试过protoc生成_pb.js
文件中的方法(.toObject(), get<Enum>()
等)
message.toObject()
我期望JSON 对象的以下形状:
但是,我收到以下信息:
javascript - 如何将 Map 值设置为数组?
我想提出一个grpc请求。请求在 proto 文件中有一个 map 字段。我已经使用 protoc 为 protos 生成了 js 文件。我无法在请求中定义 Map。
这是消息的 .proto 文件。
我收到这个错误。
java - 如何在 Java 中使 grpc StreamObserver 对象可序列化
我在 Spring Boot 中为聊天应用程序使用 gprc 双向流,因为StreamObserver<T>
对象用于将消息从服务器发送回客户端。所以,我想序列化StreamObserver<T>
对象并将其转换为字节流以将其存储在 redis 或其他数据库中。但是,因为,StreamObserver<T>
是一个不实现或扩展可序列化的接口。因此,我正在寻找一种如何序列化它的解决方案,因为大约有成千上万的用户在使用聊天应用程序并存储StreamObserver <T>
在某些应用程序中Map<String, StreamObserver<T>>
并不是一个好主意。
目前,我将StreamObserver<T>
对象存储在地图中。
Map<String, StreamObserver<T>>
这里,map 的键是聊天应用程序的用户 id,值是 StreamObserver 对象,其中包含 onNext、onError、onCompleted 函数,用于从服务器向客户端发送消息