问这个问题是因为已经过了几天了,我找不到任何有用的东西。
问题:我有一个应用程序部署到一个运行在AWS EKS上的Kubernetes集群上,在AWS ECR上有一个自定义的停靠映像。该应用程序可以很好地处理GET请求,但不适用于POST请求。给出的误差是Errore 403 forbidden CSRF Token not sent
。Django版本为2.2.24,DRF 3.11.2。我已经在CSRF_TRUSTED_ORIGINS中添加了settings.py,没有什么改变。
我使用的入口是AWS的应用程序负载均衡器集,如下所示:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: django
labels:
name: django
annotations:
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/backend-protocol: HTTP
alb.ingress.kubernetes.io/listen-ports: '[{"HTTP":80}]'
alb.ingress.kubernetes.io/group.name: "alta"
alb.ingress.kubernetes.io/group.order: "2"
alb.ingress.kubernetes.io/healthcheck-protocol: HTTP
alb.ingress.kubernetes.io/healthcheck-port: traffic-port
alb.ingress.kubernetes.io/healthcheck-path: /v1/app
alb.ingress.kubernetes.io/healthcheck-interval-seconds: "15"
alb.ingress.kubernetes.io/healthcheck-timeout-seconds: "5"
alb.ingress.kubernetes.io/success-codes: "200"
alb.ingress.kubernetes.io/healthy-threshold-count: "2"
alb.ingress.kubernetes.io/unhealthy-threshold-count: "2"
spec:
ingressClassName: alb
rules:
- http:
paths:
- pathType: Prefix
path: /
backend:
service:
name: djangoapp-cluster-ip
port:
number: 80
任何帮助都是非常感谢的。
发布于 2022-09-19 08:15:05
在旧版本中,CSRF cookie值被屏蔽。
试试这个链接
同时也认为装饰师可以帮助你
views.py
from django.views.decorators.csrf import csrf_exempt
@method_decorator(csrf_exempt, name="post")
https://stackoverflow.com/questions/73770125
复制相似问题