gpt4 book ai didi

ios - 可以通过 "Postman software"获取 XML 数据,但无法通过 SWIFT 获取数据

转载 作者:行者123 更新时间:2023-11-29 05:17:21 27 4
gpt4 key购买 nike

使用 Postman 我可以获得 XML 数据: Postman image

但是,当我按照教程并使用 SWIFT 语言解析 XML 数据时,URL 变得“无效”。 SWIFT parsing url code

result

请帮帮我。怎么会发生这种事?

testURL 的格式如下:testURL format

最佳答案

从您的评论来看,URL() 似乎返回 nil - 这表明它无法从提供的字符串创建有效的 URL。

您需要对 URL 进行百分比编码,以确保 URL 中不允许包含任何字符。

在本例中,它是 EDI_NAME 参数中的\。即使您可能在字符串文字中使用了 \\\ 在 URL 的查询字符串中也是无效的。

您可以使用StringaddingPercentEncoding方法来确保URL编码正确。

let stringURL = "http://some.host.com/net/WebService.aspx?Login=someUser@some.com&EncryptedPassword=XXXXXX&EDI_NAME=Generic\\Customers&Select_Columns=CustomerID&WHERE_Column=CustomerID&WHERE_Value=0000"

if let encodedString = stringURL.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed), let validURL = URL(string: encodedString) {
// Do something with validURL
} else {
print("Unable to create URL")
}

这将导致 EDI_NAME 参数转换为 EDI_NAME=Generic%5CCustomers -\已进行百分比编码。

Postman 可能正在为您执行百分比编码,以使事情变得更容易。

关于ios - 可以通过 "Postman software"获取 XML 数据,但无法通过 SWIFT 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59059655/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com