Die Daten konnten nicht gelesen werden, weil es nicht im richtigen format ein HTTP-Netzwerk

code

    let session = URLSession.shared

    //prepare json data
    let json: [String: Any] = ["email": "[email protected]"]

    let jsonData = try? JSONSerialization.data(withJSONObject: json)

    let proceedURL = NSURL(string:"https://mysitename.herokuapp.com/api/users/isUser")
    //let proceedURL = NSURL(string:"https://google.com")
    let request = NSMutableURLRequest(url: proceedURL! as URL)
    //HTTP Headers
    request.addValue("application/json", forHTTPHeaderField: "Content-Type")
    request.addValue("application/www.inception.v1", forHTTPHeaderField: "Accept")
    request.addValue("Authorization", forHTTPHeaderField: "Basic aW5jZXB0aW9uQGZ1cmRvOmljM=")
    request.httpMethod = "POST"
    //request.httpBody = jsonData


    //insert json data to the request
    request.httpBody = jsonData

    //create dataTask using the session object to send data to the server
    let task = session.dataTask(with: request as URLRequest, completionHandler: { data, response, error in

        guard error == nil else {
            return
        }

        guard let data = data else {
            return
        }

        //Print out response string
        let responseString = NSString(data: data, encoding: String.Encoding.utf8.rawValue)
        print("responseString = \(responseString!)")

        do {
            //create json object from data
            if let json = try JSONSerialization.jsonObject(with: data, options: .mutableContainers) as? [String: AnyObject] {
                print(json)
                //handle json...
            }

        } catch let error {
            print("error : " + error.localizedDescription)
        }

    })

    task.resume()

Fehler :
Die Daten konnten nicht gelesen werden, weil es nicht in das richtige format.

Ich bin Anfänger im iphone app-Entwicklung, helfen Sie mir und geben besseren Vorschlag für Sie Ihre Netzwerk-Verbindung (wie bei android bin ich mit dem Volley-Bibliothek )

Eigentliche Antwort ist :

{
  "status": 1,
  "http_status_code": 200,
  "data": {
    "email": "[email protected]",
    "phone": "8090909000"
  }
}

bin ich mit dem gleichen auf Android und test Postboten.

//Print out response string
        let responseString = NSString(data: data, encoding: String.Encoding.utf8.rawValue)

oberen code Antwort ist nichts

Verwenden Alamofire für iOS - Swift
wie in der Fehlermeldung werden die Daten im falschen format
Ja, also was sollte er tun? @Lu_
wenn es nicht ein json-Daten verarbeiten, die in anderen Weg, ich weiß nicht, was es ist, Sie nicht zeigen uns etwas
Was ist der Wert von responseString? Ist es JSON gültig? Ist es wirklich ein Wörterbuch?

InformationsquelleAutor R kanojia | 2017-03-24

Schreibe einen Kommentar