我相信这看起来很基本,但这是我第一次尝试使用fetch将文件上传到django,我不知道如何在django中操作和访问FormData
这会创建许多无法工作的jpg文件。如何修复
HTML:
<div>
<textarea></textarea>
<input type="file" multiple></input>
<button onClick="dothis()" >Sound</button>
</div>
JS:
function dothis(){
let data = new FormData();
let input = event.target.previousElementSibling;
for (let file of input.files){
d.append( "hello", file);
}
fetch("/images", {
credentials: "include",
method: "POST",
mode: "same-origin",
headers: {
"Accept": "application/json",
"Content-Type": "application/json", // or "multipart/form-data"??
"X-CSRFToken": csrf
},
body: data
})
.then(response => response.json())
.then(result => {
console.log("Well?");
})
Django视图.by:
def images(request):
print(request.body)
form = request.body
filename = 0
for ff in form:
filename += 1
with open(f"{filename}.jpg", "wb+") as f:
f.write(ff)
return JsonResponse(status=201)
想好了。。。
根据请求从fetch的标头中删除了内容类型
和
视图中已访问的文件。文件