Я хочу сохранить изображение, снятое с помощью веб-камеры, в папке мультимедиа
Ниже функции JS Snapshot в html делает снимок и отправляет запрос на локальный сервер.
function snapshot() {
// Draws current image from the video element into the canvas
ctx.drawImage(video, 0,0, canvas.width, canvas.height);
var Pic = document.getElementById("myCanvas").toDataURL("image/png");
Pic = Pic.replace(/^data:image\/(png|jpg);base64,/, "")
// Sending the image data to Servers
$.ajax({
type: 'POST',
url: 'addface',
data: '{ "imageData" : "' + Pic + '" }',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (xhr, status, error) {
alert("Done, Picture Uploaded.");
},
});
}
VIEWS.PY
from __future__ import unicode_literals
from django.shortcuts import render
from django.http import HttpResponse
from django.views.decorators.csrf import csrf_exempt
# Create your views here.
def index(request):
return render(request, 'index.html')
@csrf_exempt
def add(request):
if request.method == "POST":
print(request.imagedata)
return HttpResponse(request.imagedata)
else:
return HttpResponse('no data')
Ошибка: У ЗАПРОСА нет атрибута с именем «imagedata», хотя в запросе post есть imagedata как часть запроса post ajax.
Я настроил папку мультимедиа в settings.py. (БАЗА> Static> Media)
MEDIA_ROOT = os.path.join(os.path.dirname(BASE_DIR), 'static','media')