在swift中URLQueryItem的功能是什么?

问题描述 投票:0回答:1

我是iOS开发的初学者,最近我正在学习在iOS开发中使用rest API进行网络连接。构建URL以进行请求时,我发现这样的代码:

var queryComponents: [URLQueryItem] {
    var components = [URLQueryItem]()

    for (key, value) in parameters {
        let queryItem = URLQueryItem(name: key, value: "\(value)")
        components.append(queryItem)
    }

    return components
}

我不明白为什么数组组件应该是URLQueryItem数据类型。

提前致谢 :)

ios swift
1个回答
3
投票

实际上在URLComponents中有一个名为queryItems的属性,它需要一个URLQueryItem数组,其目的是在API请求中添加多个参数

在您的情况下,为什么他们将queryComponents实现为数组,他们将在queryComponents中为请求分配多个URLQueryItems。 例如:

queryComponents.append(NEW_URLQueryItem1)
queryComponents.append(NEW_URLQueryItem2)

最后当我们访问queryComponents时,我们将得到数组值,我们可以直接分配给URLComponents,如下所示,

var urlComponents = URLComponents(string: "API_URL")
urlComponents.queryItems = queryComponents
© www.soinside.com 2019 - 2024. All rights reserved.