Tôi cố gắng để tải lên một file image sử dụng vênh vang nó némCSRF thất bại trong khi tải lên các tập tin thông qua vênh vang
{ "chi tiết": "CSRF Không:. CSRF mã thông báo thiếu hoặc không chính xác" }
. Điều quan trọng cần đề cập đến là tôi đang sử dụng phiên bản django-rest-swagger 0.3.0 và django 1.7.
YAML để tải lên một bức tranh trông giống như:
parameters: - name: image in: formData required: true type: file - name: caption required: true type: string
Tôi không muốn sử dụng @csrf_exempt. Tôi đã cố gắng để vượt qua một tiêu đề vào điều này nhưng điều đó đã không làm việc. tiêu đề là cái gì đó như:
- name: X-CSRF-Token description: csrftoken to be passed in header in: header required: true type: string
bất kỳ trợ giúp sẽ được đánh giá cao.
Bạn có thẻ mã thông báo CSRF trong HTML của mình không? –
Bạn có tìm ra vấn đề này không? Tôi đang gặp vấn đề giống hệt nhau. Nó chỉ là một vấn đề cho api có tải lên tập tin. Tất cả các điểm cuối api khác đều hoạt động tốt. –
Tôi không biết nhiều điều đang diễn ra với việc vênh vang và yaml, nhưng điều tôi thấy là bạn đang truyền mã thông báo csrf làm tiêu đề. Nó chỉ cần được truyền với formdata.Tên: giá trị csrfmiddlewaretoken: lấy từ một trong hai cookie hoặc các hình thức đầu vào –