Giter VIP home page Giter VIP logo

Comments (29)

evenh avatar evenh commented on May 15, 2024 7

Is there any plans for supporting gRPC?

from spring-cloud-gateway.

n0mer avatar n0mer commented on May 15, 2024 4

@spencergibb updated url: https://improbable.io/games/blog/grpc-web-moving-past-restjson-towards-type-safe-web-apis

from spring-cloud-gateway.

BenNeighbour avatar BenNeighbour commented on May 15, 2024 4

Hey all, I've come up with a potential solution regarding API Gateways in use with gRPC. What I am doing now, is using an NGINX Proxy - which has special filters on it to authenticate as an OAuth 2.0 Client itself, or authenticating with your own custom "Authentication Microservice".

Please note if you are gonna use NGINX, then you'll have to use some form of SSL between the Proxy and the Proxyied Services because HTTP/2 requires SSL to work properly (or so I've read...). Because NGINX is quite a good proxy it enables you to do other good things like set custom headers, rate-limits, D-DOS protection, and more.

An article about use with gRPC and HTTP/2 is here https://www.nginx.com/blog/nginx-1-13-10-grpc/

Also, you can read up about some Authentication & Authorization features in this article https://www.nginx.com/blog/validating-oauth-2-0-access-tokens-nginx/

Also, another thing to add - this is even better when this is all in a Kubernetes Cluster, as you can just reference the already load-balanced hostname for each Spring Cloud service instead of hardcoding it in different environments

from spring-cloud-gateway.

tobq avatar tobq commented on May 15, 2024 1

@BenNeighbour great solution actually

from spring-cloud-gateway.

csterwa avatar csterwa commented on May 15, 2024 1

When #7 is implemented do we see this just working or will there be additional work to make gRPC work via HTTP/2 on SCG?

from spring-cloud-gateway.

okjesse avatar okjesse commented on May 15, 2024

This is really the future

from spring-cloud-gateway.

evenh avatar evenh commented on May 15, 2024

Sounds like a great future improvement!

from spring-cloud-gateway.

MilgoTest avatar MilgoTest commented on May 15, 2024

I think the only thing that is needed to use gRPC with Spring Cloud Gateway is HTTP2 support #7.

from spring-cloud-gateway.

aosorio1 avatar aosorio1 commented on May 15, 2024

Any updates?

from spring-cloud-gateway.

spencergibb avatar spencergibb commented on May 15, 2024

No, when there are updates you will see them here.

from spring-cloud-gateway.

Alexcn avatar Alexcn commented on May 15, 2024

It's the future.

from spring-cloud-gateway.

aikob avatar aikob commented on May 15, 2024

Hello! any news?

from spring-cloud-gateway.

spencergibb avatar spencergibb commented on May 15, 2024

No

from spring-cloud-gateway.

BenNeighbour avatar BenNeighbour commented on May 15, 2024

Any news on this? I'm currently using gRPC between all the server-side microservices, as well as a Typescript React app using grpc-web. I am able to have an envoy proxy sit between those microservices and the UI and everything works fine.

However, the only problem here is that the envoy proxy is just proxying straight to a service, but I need it to go through an API Gateway too (for things like filters and authentication) - like Zuul or Spring Cloud Gateway. My guess is that I cannot do this with Zuul because it doesn't support HTTP/2.

Does Spring Cloud Gateway support this and if so, what version do I need to get it working? Thanks.

PS Could anybody recommend another API Gateway that supports this

from spring-cloud-gateway.

spencergibb avatar spencergibb commented on May 15, 2024

#40 (comment)

from spring-cloud-gateway.

BenNeighbour avatar BenNeighbour commented on May 15, 2024

@spencergibb Are there any solutions or workarounds to my problem that you are aware of?

from spring-cloud-gateway.

spencergibb avatar spencergibb commented on May 15, 2024

No

from spring-cloud-gateway.

BenNeighbour avatar BenNeighbour commented on May 15, 2024

Oh okay - but thanks anyway - if I find any workarounds then I'll post them here

from spring-cloud-gateway.

yinghuzhu avatar yinghuzhu commented on May 15, 2024

hopefully, spring cloud gateway support gRPC

from spring-cloud-gateway.

shiziwen avatar shiziwen commented on May 15, 2024

@spencergibb Is there any news about grpc gateway?

from spring-cloud-gateway.

spencergibb avatar spencergibb commented on May 15, 2024

#40 (comment)

from spring-cloud-gateway.

tinder-vijayvangapandu avatar tinder-vijayvangapandu commented on May 15, 2024

@spencergibb is it something prioritized? please let us know, if not we need to find workaround or alternatives.

from spring-cloud-gateway.

spencergibb avatar spencergibb commented on May 15, 2024

This is blocked by #7

from spring-cloud-gateway.

aalansehaiyang avatar aalansehaiyang commented on May 15, 2024

awaiting good news

from spring-cloud-gateway.

gm100861 avatar gm100861 commented on May 15, 2024

hello, any good news ?

from spring-cloud-gateway.

spencergibb avatar spencergibb commented on May 15, 2024

If you look at the history, this was added in 2021.0.0

from spring-cloud-gateway.

trajano avatar trajano commented on May 15, 2024

I don't see any mention about it in the documentation except for spring.cloud.gateway.filter.json-to-grpc.enabled

I did build my own implementation for an experiment

from spring-cloud-gateway.

Albertoimpl avatar Albertoimpl commented on May 15, 2024

Hey @trajano gRPC support was added a while ago: https://spring.io/blog/2021/12/08/spring-cloud-gateway-and-grpc
Recently, we included a filter to translate from JSON automatically: https://docs.spring.io/spring-cloud-gateway/docs/4.0.0-M5/reference/html/#the-jsontogrpc-gatewayfilter-factory
Let me know if you have any feedback.

from spring-cloud-gateway.

trajano avatar trajano commented on May 15, 2024

I know it's added a while ago, my comment was that there is no mention of it in the documentation.

from spring-cloud-gateway.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.