2016-01-09 3 views
1

Я делаю http-запрос API с JSON в теле запроса. Я знаю, что мой Dictionary<String, String>, содержащий данные JSON, верен, но я получаю ответ от сервера, что мои входные данные недействительны. Я делаю что-то очень похожее на это: Swift 2.0 url post request. Я даже пробовал предлагаемое расширение, но безуспешно.Как отладить сетевой запрос Swift

Как мне отладить это? Я не могу найти способ распечатать весь запрос на консоль. Я хочу знать, что мой URLRequest фактически содержит непосредственно перед отправкой запроса. Кроме того, я хочу знать, что эта шестигранная тарабарщина на самом деле является правильной тарабарщиной, которую я имел в виду, как я должен это делать?

+0

следить вопрос: HTTP: // StackOverflow. ком/кв/34705449/4600952 – Fr4nc3sc0NL

ответ

0

Ничего особенного в этом вопросе? Просто написать расширение и печатать все, что вы хотите

пример:

extension Data { 
    func toString() -> String? { 
     return String(data: self, encoding: .utf8) 
    } 
} 

extension URLRequest { 
    func log() { 
     print("\(httpMethod ?? "") \(self)") 
     print("BODY \n \(httpBody?.toString())") 
     print("HEADERS \n \(allHTTPHeaderFields)") 
    } 
} 

Использование:

request.log() 

Образец журнала:

POST https://httpbin.org/ 
BODY 
Optional("password=xxx&username=xxx") 
HEADERS 
Optional(["Content-Type": "application/x-www-form-urlencoded; charset=utf-8"]) 
Смежные вопросы