Skip to content

Commit dbc6dd6

Browse files
authored
Readme updates
1 parent 46c54d3 commit dbc6dd6

1 file changed

Lines changed: 10 additions & 7 deletions

File tree

README.md

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,17 +26,19 @@ To use this as-is in your project, add the [GraphQL.AzureFunctionsProxy](https:/
2626

2727

2828
## Demo Site (Star Wars)
29-
This project contains a clone of the HotChocolate GraphQL *Star Wars* example project (Pure Code First version)
29+
This project contains a clone of the HotChocolate GraphQL *Star Wars* example project (Annotation based version; Pure Code First)
3030
running as an AzureFunctions app and mildly updated to use the new v11 API.
3131

3232
HotChocolate has changed the Execution pipeline for v11 API in many ways, and existing AzureFunctions
3333
implementation samples don't account for various common use cases like BatchRequests, etc.
3434

3535
### NOTES:
3636
1. **NOTE:** According to the HotChocolate team on Slack, they will provide an Official AzureFunctions
37-
middleware as part of v11 (eventually). :-)
38-
2. **WARNING: Limited Testing has been done on this but I am actively using it on projects,
39-
and will update with any findings.**
37+
middleware as part of v11 (eventually). However it will be based on the cutting edge version of
38+
Azure Functions that enable running/initializing a project exactly like a normal AspNerCore app.
39+
So this library may still help address gaps in existing Azure Function projects :-)
40+
2. **NOTE: Moderate Testing has been done on this and we are actively using it on projects,
41+
and will update with any findings; we have not completed exhaustive testing of all HotChocolate functionality.**
4042

4143
## Goals
4244

@@ -51,15 +53,16 @@ C# bindings, DI, and current Function invocation are maintained.
5153

5254
## Implementation:
5355
This approach uses a "Middleware Proxy" pattern whereby we provide the functionality of the
54-
HotChocolate HTTP middleware via a proxy class that can be injected into the Azure Function,
55-
but otherwise do not change the existing AzureFunctions invocation pipeline.
56+
existing HotChocolate HTTP middleware via a proxy class that can be injected into the Azure Function,
57+
but otherwise do not change the existing AzureFunctions invocation pipeline or the HotChocolate pipeline
58+
as it is configured in the application startup class.
5659

5760
This Proxy exposes an "executor" interface that can process the HttpContext in an AzureFunction.
5861
However, any pre/post logic could be added before/after the invocation of the executor proxy
5962
*IGraphQLAzureFunctionsExecutorProxy*.
6063

6164
This proxy is setup by internally configuring a Middleware Proxy that is an encapsulation of the
62-
existing *HttpPostMiddleware* & *HttpGetMiddleware* configured as a simple pipeline for processing POST
65+
existing HotChocolate *HttpPostMiddleware* & *HttpGetMiddleware* configured as a simple pipeline for processing POST
6366
requests first and then defaulting back to GET requests, and erroring out if neither are able to
6467
handle the request.
6568

0 commit comments

Comments
 (0)