Как загрузить видео с устройства iOS на сервер Django и после этого сохранить его в папку в формате mp4. Я что-то пробовал. Это мой IOS код:Как загрузить видео с устройства iOS на сервер Django
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:serverAddress]];
NSData *postData = [[NSData alloc] initWithContentsOfFile:[self.movieURL absoluteString]];
[request setPostValue:@"test" forKey:@"name"];
[request addData:postData withFileName:@"testt.mov" andContentType:@"video/quicktime" forKey:@"file"];
[request setDelegate:self];
[request setCompletionBlock:^
{
NSLog(@"ResponseString:%@",[request responseString]);
}];
[request setFailedBlock:^
{
NSLog(@"Error");
}];
[request startSynchronous];
[picker dismissViewControllerAnimated:YES completion:nil];
И это мой питон код:
class UploadFileForm(forms.Form):
title = forms.CharField(max_length=50)
file = forms.FileField()
def upload_file(request):
if request.method != "POST":
return HttpResponseNotAllowed(permitted_methods=['POST'])
form = UploadFileForm(request.POST.get('name'), request.FILES)
if form.is_valid():
handle_uploaded_file(request.FILES['file'])
return HttpResponse(json.dumps({"Status": 0}, sort_keys=True))
else:
return HttpResponse(json.dumps({"Status": 1}, sort_keys=True))
def handle_uploaded_file(file, path=''):
# filename = file._get_name()
destination_file = open('%s/%s' % (settings.MEDIA_ROOT, str(path) + 'test.mp4'), 'wb+')
for chunk in file.chunks():
destination_file.write(chunk)
destination_file.close()
Спасибо.
Благодарим за отправку кода, но, пожалуйста, введите в свой вопрос немного больше подробностей: какая у вас проблема, какой результат вы ожидаете, и [что вы пробовали] (http://whathaveyoutried.com), так что далеко? Прохождение [контрольный список вопросов] (http://meta.stackexchange.com/questions/156810/stack-overflow-question-checklist) поможет нам лучше ответить на ваш вопрос. Благодаря! –
Здравствуйте, до сих пор я сделал контроллер выбора, который возвращает мне путь к видео на моем устройстве, и я пытаюсь преобразовать его в данные и отправить его на мой сервер python/django, и здесь я хочу, чтобы он получил его и сохраните на мой рабочий стол/папку видеофайл с моего устройства. Проблема заключалась в том, что он разбивается на сервере django, но я решаю его с помощью -> form = UploadFileForm (request.POST, request.FILES). Теперь form.is_valid() недействителен, потому что он не штрафует никаких данных. –
Я изменил код iOS с помощью ASIFormDataRequest * request = [ASIFormDataRequest requestWithURL: url]; [запрос setPostValue: @ "test" forKey: @ "title"]; [request setFile: urlString forKey: @ "file"]; [запрос setRequestMethod: @ "POST"]; [запрос setDelegate: self]; [запрос startSynchronous]; Теперь это дает мне: -> Неверное значение NSStringEncoding 0x0000. Предполагая NSASCIIStringEncoding. Остановит это сопоставление совместимости в ближайшем будущем. –