Отсутствие пользовательских заголовков при использовании NGINX Ingress Controller на GCP - PullRequest
0 голосов
/ 22 мая 2018

Я создаю приложение на основе Java 8 и Springboot, используя docker и kubernetes на Google Cloud Platform.Приложение представляет собой API RESTFull, заголовок Http которого называется SIGNATURE.Я хочу сказать, что через входной контроллер заголовок SIGNATURE не передается.

Сценарий

  • Restfull API, разработанные в Java и SpringBoot 1.5.8.
  • Почтальон, вызывающий Rest API, отправляющий заголовок SIGNATURE.
  • API, работающий в образе докера на GCP, выполняемом K8S.
  • Используется контроллер входа NGINX.
  • Для отправки параметров для этого API требуются пользовательские заголовки http.

Проблема

Бросить "Отсутствует заголовок запроса SIGNATURE"исключение при выполнении API.

Вопрос

Как передать пользовательские заголовки из клиента в серверную с помощью NGINX Ingress Controller?

Артефакты

  • Фрагмент кода контроллера Springboot

public ResponseEntity<TransactionDTO> get( @RequestHeader("SIGNATURE") String apiSignature,<br> @RequestHeader("application/json") String contentType,<br> @PathVariable Long id)

  • Ingress Controller YAML

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: api-ingress
  annotations:
    kubernetes.io/ingress.class: nginx   
    ingress.kubernetes.io/rewrite-target: /
    nginx.ingress.kubernetes.io/ssl-redirect: "false"
spec:
  rules:
  - host: api.domain.com.br
    http:
      paths:
      - path: /manager
        backend:
          serviceName: api-svc
          servicePort: 8086

Заранее спасибо ...

...