如何在Alamofire中分开请求主体



i使用youtube实时流api。
它需要http标头,参数,请求主体。

需要参数查询字符串格式。
请求主体是json格式的。

在Alamofire中只有参数,标题。
如何将请求主体与参数分开?

直到现在,我都使用这样的。

let params: [String: Any] = [
    "part": "snippet, status", // part is parameter
    "snippet": ["title": "hhzz", // snippet is request body
                "scheduledStartTime": "2018-12-18T13:00:0Z"],
    "status": ["privacyStatus": "public"] // status is request body
]
Alamofire.request(url, method: .post, parameters: params, encoding: URLEncoding.queryString, headers: header).responseJSON { (response) in
    if let response = response.result.value {
        print(response)
    }
}

但是,这个请求是Alaways失败。因为服务器识别reqeust body = nil。
alamofire请求方法没有请求主体。
我在哪里可以输入请求主体?
或如何分开请求主体?

从YouTube文档中需要JSON主体,因此您需要使用JSON编码,并且需要将URL参数添加到请求URL。

let url = "https://www.googleapis.com/youtube/v3/liveBroadcasts?part=snippet,status"
Alamofire.request(url, method: .post, parameters: params, encoding: JSONEncoding.default, headers: header).responseJSON { (response) in
    if let response = response.result.value {
        print(response)
    }
}

相关内容

  • 没有找到相关文章

最新更新