@Mimuss

Как сделать post запрос swift?

Существует такой код:
import Foundation

var request = URLRequest(url: URL(string: "https://translate.yandex.net/api/v1.5/tr.json/translate")!)
request.httpMethod = "POST"
let key = "trnsl.1.1.20170105T183003Z.a061e235d7abde36.51b76f0ff88678b7d1cdd254edd2951b4fb00dbf"
let postString = "key=" + key + "&text=Hello&lang=en-ru"
request.httpBody = postString.data(using: .utf8)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
    guard let data = data, error == nil else {                                                 // check for fundamental networking error
        print("error=\(error)")
        return
    }
    
    if let httpStatus = response as? HTTPURLResponse, httpStatus.statusCode != 200 {           // check for http errors
        print("statusCode should be 200, but is \(httpStatus.statusCode)")
        print("response = \(response)")
    }
    
    let responseString = String(data: data, encoding: .utf8)
    print("responseString = \(responseString)")
}
task.resume()

который должен выполнять запрос по api yandex переводчика
и возвращать в JSON или XLM формате
В общем, проблема заключается в то, что я не понимаю как правильно отправить POST - запрос на свифте (я вообще этого никогда не делал ни на одном языке)
  • Вопрос задан
  • 2732 просмотра
Решения вопроса 1
@flyup2high
Собственно лови:
Pod Alamofire
https://cocoapods.org/?q=alamofire
Pod SwiftyJSON
https://cocoapods.org/?q=json
Pod SwiftyXMLParser
https://cocoapods.org/?q=lang%3Aswift%20XML
Ну и в добавок поставь RealmSwifty для хранения данных
https://cocoapods.org/?q=Realm
Думаю, что разберетесь как их закинуть в проект.

И да когда будешь гонять на симуляторе в plist'e разреши соединения с сетью.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
iLLuzor
@iLLuzor
Java, Kotlin, Android Developer
Есть библиотека alamofire. С ней всё элементарно.
Ответ написан
Комментировать
tegrato
@tegrato
Вот простой рабочий пример: https://www.youtube.com/watch?v=0bV9r1rY2cw (смотреть вторую половину видео, в первой рассказывает про GET)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы