我正在尝试使用swagger上传图像文件
{ “detail”:“CSRF失败:CSRF令牌丢失或不正确。” }
。值得一提的是,我正在使用django-rest-swagger版本0.3.0和django版本1.7。
用于上传图片的YAML如下:
parameters: - name: image in: formData required: true type: file - name: caption required: true type: string
我不想使用@csrf_exempt。我试图将标题传递给此,但这不起作用。标题是这样的:
- name: X-CSRF-Token description: csrftoken to be passed in header in: header required: true type: string
任何帮助将不胜感激。
答案 0 :(得分:1)
我有同样的问题,如果你和Django约会,那只是一个名不副实的标题。
使用'X-CSRFToken'代替'X-CSRF-Token',这对我有用。
答案 1 :(得分:0)
首先,我不理解招摇,所以......
如果您在前端视图中使用html和jquery, 您可以在发布数据时使用此功能。
name
答案 2 :(得分:0)
不知道招摇,但是当使用jquery ajax我总是使用它:
$.ajaxSetup({
data: {csrfmiddlewaretoken: '{{ csrf_token }}' },
});
希望有所帮助
答案 3 :(得分:0)
在模板中访问CSRF令牌。
{% csrf_token %}
在JavaScript模板中访问该令牌。
const token = $("input[name='csrfmiddlewaretoken']").val();
在调用API之前将其包含在标题中。
headers:{'X-CSRFToken': token}
希望它能解决错误。
答案 4 :(得分:-1)
删除整个csrv问题编辑视图
Function DblMod(Dividend, Divisor)
' Declare two double precision variables
Dim D1 As Double
Dim D2 As Double
' Copy function arguments to local variables
D1 = Dividend
D2 = Divisor
DblMod = D1 Mod D2
End Function