Comments (3)
What are the use cases we are trying to cover here ? I see that the taskList already uses the REST API with got.
I think something like grpc-web would be the start , or basically using basic Http with protocol bridging
Browser Out : grpc_http1_bridge filter which allows gRPC requests to be sent to Envoy over HTTP/1.1. Envoy then translates the requests to HTTP/2 or HTTP/3 for transport to the target server. The response is translated back to HTTP/1.1. When installed, the bridge filter gathers per RPC statistics in addition to the standard array of global HTTP statistics.
Browser In : connect_grpc_bridge filter which allows Connect requests to be sent to Envoy. Envoy then translates the requests to gRPC to be sent to the upstream. The response is converted back into the Connect protocol to be sent back to the downstream. HTTP/1.1 requests will be upgraded to HTTP/2 or HTTP/3 when needed.
Another suggestion with like you said requires significant engineering effort but might be more native is chaining EventSource and Fetch together to replicate the same functionality.
Just thinking loudly 😄
from camunda-8-js-sdk.
Full REST support for Zeebe is coming.
The only parts that won't work are the OAuth token caching to disk, and loading TLS certs from disk.
The hydration of the OAuth component with a client Id and client secret is via environment at the moment. Or it can be explicit in code, which leaves the responsibility for managing those secrets with the application.
But we would have to take the file system out of the loop for the browser env.
I think that supporting gRPC in the browser is out of scope - because the upcoming REST API will supersede it and reduce the complexity.
from camunda-8-js-sdk.
@jwulf i understand but I think we should have something like @camunda8/sdk-web
where it can be used on the web and with frameworks like react and is completely rest based , as the main issue is supporting the browser more than GRPC itself , everyone at the end wants to build a user interface that gets controlled by a BPMN process.
from camunda-8-js-sdk.
Related Issues (20)
- Support ZEEBE_REST_ADDRESS and ZEEBE_GRPC_ADDRESS HOT 5
- Incorporate Modeler Custom Root Cert Code HOT 3
- Run integration tests on Windows runner HOT 1
- Support Custom TLS Certificate as String
- Intermittent failure in Client-ThrowError integration test HOT 3
- Test failures on Windows / Windows Support HOT 6
- 404 Error when querying object immediately HOT 6
- Zeebe gRPC client.waitForReady always fails HOT 1
- Cannot construct Camunda8 using explicit configuration HOT 3
- Intermittent failure of Tasklist test in GitHub CI on SaaS HOT 1
- Add Job Update Timeout command to the JS Client HOT 6
- Token is always expired from cache
- HTTP Basic authentication support is missing HOT 3
- Support ZEEBE_INSECURE_CONNECTION env var
- [Feature Request] Support multi-tenanted Zeebe workers HOT 5
- ZeebeGrpcClient.deployResource with an array of resources HOT 1
- Response code 415 (Unsupported Media Type) on Zeebe REST completeUserTask HOT 4
- Spike: Investigate Testing Framework for the JS SDK HOT 1
- 404 Error when calling OptimizeAPI exportReportDefinitions
- Message Correlation can be tricky HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from camunda-8-js-sdk.