2017-07-27 64 views
0

我需要爲簡單地返回一個文字(可以是「OK」或「ERROR」)的頁面做HTTP POST。我有一個Web教程,顯示如何做到這一點,它返回一個JSON,我按照教程,它完美的作品。 我的問題正是在那裏......它返回一個JSON,我的網站返回的不是一個JSON,而是一個簡單的文字.. 如何得到這個網站正在返回的文字...我已經嘗試了幾個更改下面的代碼但沒有成功。HTTP POST(IOS)

let parameters = ["username": "@kilo_loco", "tweet": "HelloWorld"] 

guard let url = URL(string: "http://xxxxxxxxxx.com/ola.php") else { return } 
var request = URLRequest(url: url) 
request.httpMethod = "POST" 
//request.addValue("application/json", forHTTPHeaderField: "Content-Type") 
guard let httpBody = try? JSONSerialization.data(withJSONObject: parameters, options: []) else { return } 
request.httpBody = httpBody 

let session = URLSession.shared 
session.dataTask(with: request) { (data, response, error) in 
    if let response = response { 
     print ("*******") 
     print(response) 
    } 

    //print(data as Any) 

    if let data = data { 
     print("** TESTE **") 
     print(data) 
     //do { 
      // let json = try JSONSerialization.jsonObject(with: data, options: []) 
      //print(json) 
     //} catch { 
      // print(error) 
     // } 
    } 

}.resume() 

最後的「打印(數據)返回字節,字面的不是內容的大小..

回答

0

你缺少解析數據,以JSON對象,我覺得你的代碼Almos酒店有,但評論

 do { 
      let json:AnyObject? = try JSONSerialization.jsonObject(with: data!, options: .mutableContainers) as? NSDictionary 
      if let parseJSON = json{ 
       print(parseJSON) 
      } 
     } 

希望這有助於你

+0

你好Reinier ..沒有,代碼註釋,因爲我的網站回報是什麼不是一個JSON但單一的文字。 – Eduardo

+0

@Eduardo與如果再讓嘗試我想知道什麼打印 –

+0

Hy .. Reiner我做了你sugeste(如果讓string = String(data:data !,編碼:)。 utf8){print(string)})並且沒有附加結果。 – Eduardo