gpt4 book ai didi

php - 在Swift 4中从PHP解析JSON

转载 作者:行者123 更新时间:2023-12-01 22:16:23 25 4
gpt4 key购买 nike

使用Swift 4从PHP输出页面加载JSON时出现错误。

注意:已检查PHP脚本,并且可以正常工作

let myUrl = URL(string: "http://localhost/swift/signin_up/login.php");
var request = URLRequest(url:myUrl!)
request.httpMethod = "POST"// Compose a query string
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
DispatchQueue.main.async {
let task = URLSession.shared.dataTask(with: request) { (data: Data?, response: URLResponse?, error: Error?) in
if error != nil {
print("error=\(error!)")
return
}

// You can print out response object
print("response = \(response!)")
print("==================================")
//Let's convert response sent from a server side script to a NSDictionary object:
do {
let json = try JSONSerialization.jsonObject(with: data!, options: .mutableContainers) as? NSDictionary

if let parseJSON = json {
print(parseJSON)
}
} catch {
print(" error:\(error)")
}
}
task.resume()

我从Xcode收到此错误消息:

错误:错误域= NSCocoaErrorDomain代码= 3840“JSON文本不是以数组或对象开头,并且没有允许设置片段的选项。” UserInfo = {NSDebugDescription = JSON文本不是以数组或对象开头,并且未设置允许片段的选项。}

当我将选项更改为:
options: [.mutableContainers, .allowFragments]

我收到此错误消息:

错误:错误域= NSCocoaErrorDomain代码= 3840“垃圾在结尾。” UserInfo = {NSDebugDescription =垃圾结束。}

这是我测试的PHP输出:
{"id":"1","email":"aa","password":"aa"}

最佳答案

在数据库服务器选择中设置character_set时要小心
(utf8_unicode_ci)使用时获取正确的json格式

json_encode(//json variable);

在PHP中

关于php - 在Swift 4中从PHP解析JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51850153/

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