[英]JSON data returning nil
I am getting data from my server, and trying to convert that into JSON
. 我正在从服务器获取数据,并尝试将其转换为
JSON
。 On my php script I am converting it to JSON
then sending it over. 在我的PHP脚本上,我将其转换为
JSON
然后将其发送过来。
Here is my code: 这是我的代码:
let url: NSURL = NSURL(string: "https://xxxxxx.com/myFile.php")!
let request:NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
let bodyData = "username=\(username.text!)&password=\(password.text!)"
request.httpMethod = "POST"
request.httpBody = bodyData.data(using: String.Encoding.utf8);
request.setValue("application/x-www-form-urlencoded; charset=utf-8", forHTTPHeaderField: "Content-Type")
NSURLConnection.sendAsynchronousRequest(request as URLRequest, queue: OperationQueue.main)
{
(response, data, error) in
if(error == nil){
var responseString = NSString(data: data!, encoding: String.Encoding.utf8.rawValue)
DispatchQueue.main.async {
let viewController = self.storyboard?.instantiateViewController(withIdentifier: "nextVC") as! ViewController
viewController.importData = data!
viewController.modalTransitionStyle = .crossDissolve
self.present(viewController, animated: true, completion: nil)
}
}
}
ViewController ViewController
var importData = Data() //when I cast this to NSString and print it I see the JSON correctly.
let json = JSON(data: importData) // this prints nil.
Any reason why? 有什么原因吗?
Try to convert the response to string and see if the response from server is valid. 尝试将响应转换为字符串,然后查看服务器响应是否有效。
var dataString = String(data: importedData, encoding: .utf8)
print(dataString)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.