src/article/article.module.ts
Public configure | ||||||
configure(consumer: MiddlewaresConsumer)
|
||||||
Defined in src/article/article.module.ts:20
|
||||||
Parameters :
Returns :
void
|
import { MiddlewaresConsumer, Module, NestModule, RequestMethod } from '@nestjs/common';
import { ArticleController } from './article.controller';
import { TypeOrmModule } from '@nestjs/typeorm';
import { ArticleEntity } from './article.entity';
import { Comment } from './comment.entity';
import { UserEntity } from '../user/user.entity';
import { FollowsEntity } from '../profile/follows.entity';
import { ArticleService } from './article.service';
import { AuthMiddleware } from '../user/auth.middleware';
import { UserModule } from '../user/user.module';
@Module({
imports: [TypeOrmModule.forFeature([ArticleEntity, Comment, UserEntity, FollowsEntity]), UserModule],
components: [ArticleService],
controllers: [
ArticleController
]
})
export class ArticleModule implements NestModule {
public configure(consumer: MiddlewaresConsumer) {
consumer
.apply(AuthMiddleware)
.forRoutes(
{path: 'aticles/feed', method: RequestMethod.GET},
{path: 'aticles', method: RequestMethod.POST},
{path: 'aticles/:slug', method: RequestMethod.DELETE},
{path: 'aticles/:slug', method: RequestMethod.PUT},
{path: 'articles/:slug/comments', method: RequestMethod.POST},
{path: 'articles/:slug/comments/:id', method: RequestMethod.DELETE},
{path: 'articles/:slug/favorite', method: RequestMethod.POST},
{path: 'articles/:slug/favorite', method: RequestMethod.DELETE});
}
}