Как получить реальный пользовательский ip при использовании graphl, kubernetes и docker? - PullRequest
1 голос
/ 19 марта 2020

Я пытаюсь получить реальный IP-адрес пользователя, посещающего мой сайт - для статистики c по отдельным пользователям. В настоящее время я могу видеть только docker ip.

Проект настроен с помощью kubernetes, docker и использует graphql для запросов. Я не установил это, почему я не уверен в том, как они взаимодействуют друг с другом и где именно находится проблема.

@Module({
  imports: [
    ConfigModule,
    GraphQLModule.forRootAsync({
      inject: [ConfigService],
      useFactory: () => ({
        autoSchemaFile: 'schema.gql',
        debug: true,
        fieldResolverEnhancers: ['guards'],
        formatError: (error: GraphQLError): GraphQLFormattedError => {
          return error.originalError instanceof BaseException
            ? error.originalError.serialize()
            : error;
        },
        context: ({ req }): object => {
          console.log("Ip:", req.ip); // Prints the docker ip, not the real user ip
          return ({ req });
        },
      }),
    }),
    ...
  ],
  controllers: [AppController],
  providers: [AppService],
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...