如何使用 PHP 和 Swift 5 解析 JSON

我正在通过 PHP 在我的应用程序中解析 JSON,我的消息中心运行良好,但现在它停止工作。我正在使用 Swift 5、PHP 和 MySQL。


当我尝试在应用程序中查看页面时,我收到一个 JSON 错误消息,


'无法读取数据,因为它的格式不正确'。


使用相同代码的其他页面没有这个问题。


我尝试了不同的属性,JSONSerialization但没有任何效果。


从 php 加载消息的 Swift 5 代码


func loadMessages() {



    let username = user!["username"] as! String

    let url = URL(string: "https://www.xxxx.com/messagecenter.php")!

   var request = URLRequest(url: url)


    request.httpMethod = "POST"

    let body = "username=\(username)"

    request.httpBody = body.data(using: String.Encoding.utf8)


    URLSession.shared.dataTask(with: request) { data, response, error in


        DispatchQueue.main.async(execute: {


            if error == nil {


                do {


                    let json : NSDictionary? = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as? NSDictionary


                    self.tableView.reloadData()


                    guard let parseJSON = json else {

                        print("Error while parsing")

                        return

                    }


                    guard let messages = parseJSON["messages"] as? [AnyObject] else {

                        print("Error while parseJSONing")

                        return

                    }

                   self.hhmessages = messages


                    for i in 0 ..< self.hhmessages.count {


                    let path = self.hhmessages[i]["ava"] as? String


                        if !path!.isEmpty {

                            let url = URL(string: path!)!


                            let imageData = try? Data(contentsOf: url) 

     let image = UIImage(data: imageData!)! 

     self.avas.append(image) // append found image to [images] var

                        } else {

                            let image = UIImage()


                            self.avas.append(image) 


                        }


                    }

慕哥9229398
浏览 191回答 1
1回答

森栏

使用以下步骤解决了该问题:打印打印(字符串(数据:数据!,编码:.utf8))错误消息显示我的文件被 GoDaddy 阻止将我的页面添加到 Godaddy 安全门户的白名单有效。
打开App,查看更多内容
随时随地看视频慕课网APP