@2muchcoffee/nestjs-gql-context
v0.2.0
Published
NestJS npm package
Downloads
20
Readme
@2muchcoffee/nestjs-context
Allows you to get the request context outside of the NestJs request scope
Installation
npm install @2muchcoffee/nestjs-context --save
Usage
Import ContextModule
to AppModule
or CoreModule
for once
import { ContextModule } from '@2muchcoffee/nestjs-context';
@Module({
imports: [
...
ContextModule,
...
]
})
export class AppModule {
}
After ContextModule
import you can use Context
and its static functions in your code
import { Context } from '@2muchcoffee/nestjs-context';
const {user} = Context.getHttpReq<Request>();
Note: In most cases author uses @2muchcoffee/nestjs-context to get context in custom validators. See samples for more details.
GraphQl
You should install @2muchcoffee/nestjs-gql-context
in order to get the correct context on the framework usage
npm install @2muchcoffee/nestjs-gql-context --save
If you want the graphql context, you can get it using GqlContext
instead of Context
import { GqlContext } from '@2muchcoffee/nestjs-gql-context';
GqlContext.getGqlContext<{req: Request}>()
Static Methods
| Method | Description |
|-------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------|
| Context | import { Context } from '@2muchcoffee/nestjs-context' |
| getContext
| Returns the current request pipeline |
| getHttpArgs
| Returns an array of arguments being passed to the handler |
| getHttpReq
| Returns a request object |
| getHttpRes
| Returns a response object |
| getType
| Returns the current execution context type (string) |
| isHttp
| Returns true if the current execution context type is http |
| isGraphql
| Returns true if the current execution context type is graphql |
| GqlContext | import { GqlContext } from '@2muchcoffee/nestjs-gql-context'; Context
extends from GqlContext
and has the same methods |
| getExecutionContext
| Returns the current gql execution context |
| getGqlRoot
| The previous object sent from the previous Query type |
| getGqlArgs
| Arguments provided in the GraphQL query |
| getGqlContext
| A value which is provided to every resolver and holds important contextual information |
| getGqlInfo
| A value which holds field-specific information relevant to the current query |
Samples
Take a look at samples in ./sample for usage examples.