Page MenuHomePhabricator

[identity] enable grpc-web on identity service
ClosedPublic

Authored by varun on Mar 29 2023, 3:10 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Dec 16, 12:31 PM
Unknown Object (File)
Sat, Nov 30, 3:28 PM
Unknown Object (File)
Nov 8 2024, 9:23 PM
Unknown Object (File)
Nov 8 2024, 9:23 PM
Unknown Object (File)
Nov 8 2024, 9:23 PM
Unknown Object (File)
Nov 8 2024, 9:23 PM
Unknown Object (File)
Nov 8 2024, 9:19 PM
Unknown Object (File)
Nov 5 2024, 2:10 AM
Subscribers

Details

Summary

tonic_web::enable will apply a CORS default configuration, returning a tower_http::cors::Cors instance that works well with grpc-web clients out of the box.
However, the server builder's add_service method requires that the NamedService trait be implemented for its input, and tower_http::cors::Cors does not implement this trait.
To get around this, I've written a service wrapper that implements the Service and NamedService traits.

Test Plan

called generateNonce using normal grpc and grpc-web (BloomRPC supports both) and got back a nonce string

Diff Detail

Repository
rCOMM Comm
Lint
Lint Not Applicable
Unit
Tests Not Applicable