Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import json
- import yaml
- from django.shortcuts import render
- from django.http import HttpResponse, StreamingHttpResponse, JsonResponse
- from django.views.decorators import gzip
- from .server_api import ServerApi
- from .camera import Camera, makePhoto
- import uuid
- import cv2
- from django.views.decorators.csrf import csrf_exempt
- def index(request):
- return render(request, 'kassa/index.html')
- # предсказание
- @csrf_exempt
- def predict(request):
- dir_out = './static/photos/'
- filename = dir_out + str(uuid.uuid4()) + '.jpg'
- f = request.FILES['image']
- with open(filename, 'wb+') as destination:
- for chunk in f.chunks():
- destination.write(chunk)
- api = ServerApi()
- result = api.predict(filename)
- result = yaml.load(result)
- result['filename'] = './static/photos/' + result['filename']
- return JsonResponse(result)
- # ЭТО ДОБАВИЛ
- @csrf_exempt
- def pay(request):
- json_data = json.loads(request.body)
- # тут твои товары
- items = json_data['items']
- # тут твои товары в json-строке
- items_json = json.dumps(items)
- return JsonResponse({'success': true})
- # КОНЕЦ
- # трансляция с камеры
- def gen(camera):
- while True:
- frame = camera.get_frame()
- yield(b'--frame\r\n'
- b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n\r\n')
- @gzip.gzip_page
- def camera(request):
- try:
- return StreamingHttpResponse(gen(Camera()), content_type="multipart/x-mixed-replace;boundary=frame")
- except:
- print("aborted cam")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement