首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  编程

关于 grpc

  •  
  •   trys1 · 2018-03-12 19:02:53 +08:00 via Android · 1517 次点击
    这是一个创建于 610 天前的主题,其中的信息可能已经有所发展或是发生改变。
    已知 grpc 支持很多语言,现在想请教大家,js (注意不是 node.js)有办法使用 grpc 吗?
    我用某后端语言实现一个使用 grpc 的服务端,然后想用 js 跟这个服务端交互可以实现吗?
    grpc 官方没有 js 版的客户端的理由是什么?这种方式不适合吗?
    5 回复  |  直到 2018-04-03 13:36:20 +08:00
        1
    cyhone   2018-03-13 13:06:58 +08:00
    对 grpc 没有深入的研究,但是看楼主的意思是想通过浏览器端的 js 与后端 grpc 的 server 进行交互,首先浏览器端 js 是不支持 socket 操作的,和后端交互的只有 http 的方式,所以用 grpc 在后端建立一个 Http server 就可以了。

    话说回来在,这种 rpc 框架适用场景是内网多服务器之间的交互,而楼主想到实现的是浏览器端 js 访问,是属于外网交互,这种只能通过 http server 来进行。
        2
    trys1   2018-03-13 22:09:37 +08:00 via Android
    我的需求是这样没错。
    但是 grpc 本身不就是基于 http2 的吗?
    像 thrift 就有 js 版的客户端,但是我现在由于某原因只能使用 grpc 不能使用 thrift,只是不明白 grpc 官方没有 js 客户端的原因
        3
    timonwong   2018-03-15 15:03:28 +08:00
    并不是没有: grpc-web: https://github.com/improbable-eng/grpc-web

    然而,stream 一般就不要想了
        4
    trys1   2018-03-15 20:03:13 +08:00 via Android
    @timonwong 我说的“没有”指的是 grpc.io 官方没有。


    这种第三方实现的毕竟不够完美,如你所说 stream 不行
        5
    jerry   2018-04-03 13:36:20 +08:00
    可以试试,不过我也没用过 https://github.com/grpc-ecosystem/grpc-gateway
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3361 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 23ms · UTC 04:25 · PVG 12:25 · LAX 20:25 · JFK 23:25
    ♥ Do have faith in what you're doing.