// // Response.swift // Cyberlock // // Created by Jura on 8/21/19. // Copyright © 2019 Omicronmedia. All rights reserved. // import Foundation public struct Response { public let statusCode: Int? public let data: Data public let response: URLResponse? public var request: URLRequest #if DEBUG public var curlString: NSString { return self.request.curlString } #endif } // MARK: - cURL internal extension URLRequest { var curlString: NSString { var result = "curl -k " if let method = httpMethod { result += "-X \(method) \\\n" } if let headers = allHTTPHeaderFields { for (header, value) in headers { result += "-H \"\(header): \(value)\" \\\n" } } if let body = httpBody, !body.isEmpty, let string = String(data: body, encoding: .utf8), !string.isEmpty { result += "-d '\(string)' \\\n" } if let url = url { result += "'\(url.absoluteString)'" } return result as NSString } }