gpt4 book ai didi

ios - 使用快速语言在NSMutableURLRequest URL中引起日期字符串错误

转载 作者:行者123 更新时间:2023-12-01 19:29:52 25 4
gpt4 key购买 nike

转换为String后我正在传递日期,但导致错误

unexpectedly found nil while unwrapping a value
这是请求的代码
let url = SERVICE_URL + "GetHistoryDataByTerminalNo?TerminalNo=\(VehicleList.SelectedTerminal.selectedTerminalId)&fromDate=\(fromDateText)&toDate=\(endDateText)"

let request = NSMutableURLRequest(url: NSURL(string: url)! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 30.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers
更新
我得到这个网址
http://labs2.unitedtracker.com/api/Trackers/GetHistoryDataByTerminalNo?TerminalNo=351535058776063&fromDate=2020-08-23 14:15:52.000&toDate = 2020-08-23 16:15:52.000

最佳答案

您不能只将带有空格的字符串放入URL中,而必须先对其进行URL编码。
首先,添加extension进行URL编码:

extension String {
public var urlEncoded: String {
var allowedCharacters = CharacterSet.urlQueryAllowed
allowedCharacters.remove(charactersIn: "!*'();:@&=+$,/?%#[]")

return addingPercentEncoding(withAllowedCharacters: allowedCharacters) ?? ""
}
}
其次,对参数值进行编码:
let url = SERVICE_URL + "GetHistoryDataByTerminalNo?TerminalNo=\(VehicleList.SelectedTerminal.selectedTerminalId.urlEncoded)&fromDate=\(fromDateText.urlEncoded)&toDate=\(endDateText.urlEncoded)"
或者,您可以使用 URLComponentsURLQueryItem生成您的URL。

关于ios - 使用快速语言在NSMutableURLRequest URL中引起日期字符串错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63546168/

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