Проблемы с загрузкой Alamofire на YouTube - PullRequest
0 голосов
/ 10 сентября 2018

Я использую Alamofire для загрузки видео на YouTube, используя пример кода по этой ссылке:

Загрузка видео на Youtube с использованием API REST без iOS SDK

Это работает для загрузки, но проблема в том, что я не могу найти способ правильно отправить метаданные, такие как теги и privacyStatus. Я пробовал эти строки, но это не помогает, работают только заголовок и описание, больше ничего.

let title = "Test title"
let description = "Test description"
let keywords = ["keyword1", "keyword2"]
let privacyStatus =  "private"

let snippetMetadata = "{'snippet':{'title' : '\(title)', 'description':' \(description)', 'tags':'\(keywords)'}}".data(using: .utf8, allowLossyConversion: false)!


multipartFormData.append(snippetMetadata, withName: "snippet", mimeType: "application/json")


let statusMetadata = "{'status':{'privacyStatus' : '\(privacyStatus)'}}".data(using: .utf8, allowLossyConversion: false)!

multipartFormData.append(statusMetadata, withName: "status", mimeType: "application/json")

РЕДАКТИРОВАТЬ: мне удалось исправить проблему метаданных, объединив вместе статус и фрагмент json, т.е.

snippetMetadata = "{'snippet':{'title' : '\(title)', 'description':' \(description)', 'tags': \(keywords)},'status':{'privacyStatus' : '\(privacyStatus)'}}".data(using: .utf8, allowLossyConversion: false)!

Моя следующая проблема - как обрабатывать ошибки API с помощью Alamofire. Я не использовал эту библиотеку раньше, но хотел бы знать, как она отправляет ошибки.

...