ios - 如何通过在 Swift 中提供标头来调用 REST 完整 API
问题描述
我对 Swift 很陌生,我们有一个 API 服务器,我们需要像这样传递 HEADERS:
内容类型:应用程序/json
会话:fb4e7f9b-0f31-4709-
我在看谷歌,最基本的例子使用HTTP url调用(即GET,POST)我是否需要使用一些第三方产品通过提供标头来调用REST API?
如果您提供一些指南和可能的示例文章,我将不胜感激,它通过提供不同类型的 HEADER 来展示如何进行 REST API 调用。
解决方案
通过使用 Alamofire,它非常简单。
let headers: HTTPHeaders = [
"Content-Type": "application/json",
"Session": "fb4e7f9b-0f31-4709-"
]
Alamofire.request("https://httpbin.org/headers", headers: headers).responseJSON { response in
//Parse or print your response.
}
通过使用urlRequest
let header: HTTPHeaders = [
"Content-Type": "application/json",
"Session": "fb4e7f9b-0f31-4709-"
]
var urlRequest = URLRequest(url: URL(string: "your request url goes here."), cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10)
urlRequest.allHTTPHeaderFields = header
urlRequest.httpMethod = //.get, .post, .put
URLSession.shared.dataTask(with: urlRequest) { (data, response, error) in
if let error = error {
print(error)
} else if let data = data ,let responseCode = response as? HTTPURLResponse {
do {
// Parse your response here.
}
}
catch let parseJSONError {
print("error on parsing request to JSON : \(parseJSONError)")
}
}
}.resume()
推荐阅读
- amazon-web-services - 将 S3 存储桶添加到 Lake Formation 后,Athena 查询失败
- c# - 如何在 ASP.NET MVC 上对角色使用身份验证
- ag-grid - ag-grid 企业捆绑包大小
- javascript - Firebase 用于在网站不同文档的访问者之间进行网络区分
- reactjs - 如何在 gitlab 上发布一个 react js 网站
- reactjs - 如何更改 Material-UI 的边框底部
如果是禁用 - machine-learning - 如何添加零填充以使数据集中的图像大小相等?
- python - 搜索单个项目的 3D 列表
- c# - 无法创建发布配置文件 - Azure
- font-awesome - Laravel 8 FontAwesome 不正确的目录