2016-11-30 2 views
0

Ich versuche mein PHP-Ergebnis in einer IOS-App anzuzeigen. Der Code ist die folgende:JSON-Feed anzeigen Swift 3.0

func get() 
    { 
     //let url = NSURL(string: "http://www.w3schools.com/js/customers_mysql.php") 
     let url = NSURL(string: "http://www.helpmewastetime.com/service.php") 
     let data = NSData(contentsOf: url! as URL) 

     values = try! JSONSerialization.jsonObject(with: data! as Data, options: JSONSerialization.ReadingOptions.allowFragments) as! NSArray 


     var array = [""] 
     array = (values.value(forKey: "Name") as? [String])! 
     lb_Value.text = array[0] 


    } 

Der Code für den w3schools Link funktioniert prima, aber stürzt es, wenn ich meine Verbindung verwenden (auf GoDaddy gehostet) Wenn Sie auf die Links von einem Web-Browser zu öffnen, wir Erhalten Sie das beabsichtigte Ergebnis.

Dies ist der Fehler empfangen:

2016-11-30 16:44:24.977781 Fun iOS App[2590:112849] [] __nw_connection_get_connected_socket_block_invoke 2 Connection has no connected handler 
2016-11-30 16:44:24.979616 Fun iOS App[2590:112846] PAC stream failed with 
2016-11-30 16:44:24.981519 Fun iOS App[2590:112849] [] nw_proxy_resolver_create_parsed_array PAC evaluation error: kCFErrorDomainCFNetwork: 2 
2016-11-30 16:44:26.145018 Fun iOS App[2590:112849] [] nw_endpoint_handler_add_write_request [1.1.1 107.180.54.250:80 failed socket-flow (satisfied)] cannot accept write requests 
2016-11-30 16:44:26.145764 Fun iOS App[2590:112847] [] __tcp_connection_write_eof_block_invoke Write close callback received error: [22] Invalid argument 
2016-11-30 16:44:26.150620 Fun iOS App[2590:112846] [] nw_proxy_resolver_create_parsed_array PAC evaluation error: kCFErrorDomainCFNetwork: 2 
fatal error: 'try!' expression unexpectedly raised an error: Error Domain=NSCocoaErrorDomain Code=3840 "Invalid value around character 0." UserInfo={NSDebugDescription=Invalid value around character 0.}: file /Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-800.0.58.6/src/swift/stdlib/public/core/ErrorType.swift, line 178 

Jede Hilfe wäre viel

+0

http://www.helpmewastetime.com/service.php verweist auf eine [HTML-Seite] (https://www.evernote.com/l/AOyy9a1kG7xDtbawSnrbB41nOVEqpXWDYnc), nicht auf eine JSON-Antwort ... – Moritz

Antwort

3

geschätzt werden, wie Eric Aya in seinem Kommentar erwähnt. Das Problem besteht darin, dass Ihr PHP-Dienst die JSON-Daten in eine HTML-Seite spuckt.

Als ich Quelle Ihrer Seite zu sehen bekomme ich folgendes:

<html> 
[{"ID":"1","Name":"Peter"},{"ID":"2","Name":"James"}] 
</html> 

Die Seite Quelle der URL w3schools ist einfach JSON. In Ihrem PHP-Dienst geben Sie Ihre Daten in JSON aus und Sie sollten gut gehen.

+0

Danke Todd ! Funktioniert jetzt gut –