Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 使用Swift从数据库获取信息_Json_Swift - Fatal编程技术网

Json 使用Swift从数据库获取信息

Json 使用Swift从数据库获取信息,json,swift,Json,Swift,我想使用PHP和Swift从数据库中获取信息 程序在代码的最后一行停止: let post:NSString = "email=\(username)&password=\(password)" NSLog("PostData: %@",post); let url:NSURL = NSURL(string: "http://tatouapp.netau.net/login.php")! let postData:NSData = post.dataUsingEncoding(NS

我想使用PHP和Swift从数据库中获取信息

程序在代码的最后一行停止:

let post:NSString = "email=\(username)&password=\(password)"

NSLog("PostData: %@",post);

let url:NSURL = NSURL(string: "http://tatouapp.netau.net/login.php")!

let postData:NSData = post.dataUsingEncoding(NSASCIIStringEncoding)!

let postLength:NSString = String( postData.length )

let request:NSMutableURLRequest = NSMutableURLRequest(URL: url)
request.HTTPMethod = "POST"
request.HTTPBody = postData
request.setValue(postLength as String, forHTTPHeaderField: "Content-Length")
request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
request.setValue("application/json", forHTTPHeaderField: "Accept")


var reponseError: NSError?
var response: NSURLResponse?

let urlData: NSData? = try! NSURLConnection.sendSynchronousRequest(request, returningResponse:&response)

if ( urlData != nil ) {
    let res = response as! NSHTTPURLResponse!;

    NSLog("Response code: %ld", res.statusCode);

    if (res.statusCode >= 200 && res.statusCode < 300)
    {
        let responseData:NSString  = NSString(data:urlData!, encoding:NSUTF8StringEncoding)!

        NSLog("Response ==> %@", responseData);

        let error: NSError?

        let jsonData = try! NSJSONSerialization.JSONObjectWithData(urlData!, options: NSJSONReadingOptions.MutableContainers) as! NSArray
let post:NSString=“电子邮件=\(用户名)&密码=\(密码)”
NSLog(“PostData:%@”,post);
让url:NSURL=NSURL(字符串:http://tatouapp.netau.net/login.php")!
让postData:NSData=post.dataUsingEncoding(NSASCIIStringEncoding)!
让postLength:NSString=String(postData.length)
let请求:NSMutableURLRequest=NSMutableURLRequest(URL:URL)
request.HTTPMethod=“POST”
request.HTTPBody=postData
setValue(postLength为字符串,forHTTPHeaderField:“内容长度”)
request.setValue(“application/x-www-form-urlencoded”,forHTTPHeaderField:“内容类型”)
request.setValue(“application/json”,forHTTPHeaderField:“Accept”)
var REPORNSERROR:NSError?
var响应:nsurresponse?
是否让urlData:NSData?=尝试NSURLConnection.sendSynchronousRequest(请求、返回响应和响应)
if(urlData!=nil){
让res=响应为!NSHTTPURLResponse!;
NSLog(“响应代码:%ld”,res.statusCode);
如果(res.statusCode>=200&&res.statusCode<300)
{
让responseData:NSString=NSString(数据:urlData!,编码:NSUTF8StringEncoding)!
NSLog(“响应==>%@”,响应数据);
让错误:n错误?
让jsonData=try!NSJSONSerialization.JSONObjectWithData(urlData!,选项:NSJSONReadingOptions.MutableContainers)作为!NSArray
我收到了以下错误消息:

致命错误:“try!”表达式意外引发错误:error Domain=NSCocoaErrorDomain Code=3840“JSON文本未以数组或对象开头,允许未设置片段的选项。”UserInfo={NSDebugDescription=JSON文本未以数组或对象开头,允许未设置片段的选项


JSON文本不是以数组或对象开头的
:看起来JSON无效(不是以
[
{
开头)。用安全的解包代替强制解包。用
强制解包!
:射中你自己脚的最佳方式。@EdCottrell完成,第一篇帖子在这里,对不起:)@Prométhéen谢谢;我们都去过那里!@EricD。如果我检查变量的内容,urlData value={}et jsonData={}