Django,存储在 http POST 中作为字符串接收的 jpg 文件
Django, Store jpg file received as string in http POST
我收到来自桌面应用程序的 http 请求和屏幕截图。我无法与开发人员交谈或查看源代码,所以我只有收到的 http 请求。
文件不在 request.FILES,它在 request.POST。
@csrf_exempt
def create_contract_event_handler(request, contract_id, event_type):
keyboard_events_count = request.POST.get('keyboard_events_count')
mouse_events_count = request.POST.get('mouse_events_count')
screenshot_file = request.POST.get('screenshot_file')
barr2 = bytes(screenshot_file.encode(encoding='utf8'))
with open('.test/output.jpeg', 'wb') as f:
f.write(barr2)
f.close()
文件已损坏。
二进制开始是这样的,不知道有没有帮助:
����JFIFHH��C
%# , #&')*)-0-(0%()(��C
(((((((((((((((((((((((((((((((((((((((((((((((((((�� `"��
此外,如果我尝试使用 PIL 打开图像,我会收到以下错误:
from PIL import Image
im = Image.open('./test/output.jpg')
#OSError: cannot identify image file './test/output.jpg'
最后,我设法触及了另一方面的代码,'filename' 在 header 中丢失了,因此我在 POST 中获取了文件在 FILES 字典中。
我收到来自桌面应用程序的 http 请求和屏幕截图。我无法与开发人员交谈或查看源代码,所以我只有收到的 http 请求。
文件不在 request.FILES,它在 request.POST。
@csrf_exempt
def create_contract_event_handler(request, contract_id, event_type):
keyboard_events_count = request.POST.get('keyboard_events_count')
mouse_events_count = request.POST.get('mouse_events_count')
screenshot_file = request.POST.get('screenshot_file')
barr2 = bytes(screenshot_file.encode(encoding='utf8'))
with open('.test/output.jpeg', 'wb') as f:
f.write(barr2)
f.close()
文件已损坏。
二进制开始是这样的,不知道有没有帮助:
����JFIFHH��C
%# , #&')*)-0-(0%()(��C
(((((((((((((((((((((((((((((((((((((((((((((((((((�� `"��
此外,如果我尝试使用 PIL 打开图像,我会收到以下错误:
from PIL import Image
im = Image.open('./test/output.jpg')
#OSError: cannot identify image file './test/output.jpg'
最后,我设法触及了另一方面的代码,'filename' 在 header 中丢失了,因此我在 POST 中获取了文件在 FILES 字典中。