changed the load balancer target group from GRPC to HTTP2 to resolve the grpc-web issues on staging.
safari and chrome were able to adapt to HTTP2 and so requests succeeded. normal gRPC requests from native still work, too.
one issue, though, is that older browsers that don't support HTTP2 won't be able to run the web app
Browsers with limited HTTP/2 support:
- Internet Explorer 11 (limited support for specific features, unclear what these feature are, though)
- Older versions of Android WebView (prior to version 47)
Browsers with no HTTP/2 support:
- Internet Explorer 10 and earlier
- Older versions of iOS Safari (prior to version 9)
- Older versions of Android Browser (prior to version 5)
Another possible solution is to introduce a new aws_lb_listener that listens on a different port (say, 50057) for HTTP/1.1 requests, but this solution is a little more involved. If we think this is the right way to go, I can revise this diff.