Nest не может разрешить зависимости службы HTTPService (?). Пожалуйста, убедитесь, что аргумент AXIOS_INSTANCE_TOKEN в индексе [0]

#nestjs

Вопрос:

Я внедряю API в NestJS, который будет использовать другой API, я использую @nestjs/axios.

Я следовал этому уроку: https://docs.nestjs.com/techniques/http-module

Но когда я начинаю проект с yarn start:dev

Это создает исключение, как:

 ERROR [ExceptionHandler] Nest can't resolve dependencies of the HttpService (?). Please make sure that the argument AXIOS_INSTANCE_TOKEN at index [0] is available in the AxelGlobeModule context.

Potential solutions:
- If AXIOS_INSTANCE_TOKEN is a provider, is it part of the current AxelGlobeModule?
- If AXIOS_INSTANCE_TOKEN is exported from a separate @Module, is that module imported within AxelGlobeModule?
  @Module({
    imports: [ /* the Module containing AXIOS_INSTANCE_TOKEN */ ]
  })
 

Мое приложение.модуль.ts

 @Module({
  imports: [
    FileModule,
    ConfigurationModule,
    AxelGlobeModule,
    HttpModule.registerAsync({
      imports: [ConfigModule],
      useFactory: async (configService: ConfigService) => ({
        timeout: configService.get('HTTP_TIMEOUT') || 1000,
        maxRedirects: configService.get('HTTP_MAX_REDIRECTS') || 5,
        baseURL: `{url}`,
        paramsSerializer: (params) => {
          return qs.stringify(
            params,
            PARAMS_SERIALIZER_DEFAULT_OPTIONS as IStringifyOptions,
          );
        },
      }),
      inject: [ConfigService],
    }),
  ],
  controllers: [AppController],
  providers: [AppService, HttpModule, HttpService],
  exports: [HttpModule],
})
 

Мой аксель-глобус.модуль.ts

 @Module({
  controllers: [AxelGlobeController],
  imports: [ConfigModule.forRoot(), HttpModule],
  providers: [AxelGlobeService, HttpService],
}) 
 

Моя служба.ts

 constructor(private readonly httpService: HttpService) {}
 

Кто-нибудь может мне помочь?

Ответ №1:

отбросьте это HttpService из своего providers списка. Вам просто нужно импортировать HttpModule , чтобы HttpService поставщик был доступен для использования. Следуйте инструкциям https://docs.nestjs.com/techniques/http-module#getting-started

Комментарии:

1. Хорошая мысль, сейчас это работает.