Releases: 0xLet/SURL
Releases · 0xLet/SURL
canImport(Combine)
URL+
Overview
Example SURL
"https://raw.githubusercontent.com/0xLeif/0xLeif/master/README.md"
.url?
.get { (data, response, error) in
print(String(data: data!, encoding: .utf8))
}
URLRequest+ HTTPRequestMethod
public extension URLRequest {
// MARK: HTTPRequestMethod
enum HTTPRequestMethod: String {
case GET
case HEAD
case POST
case PUT
case DELETE
case CONNECT
case OPTIONS
case TRACE
case PATCH
}
}
URLRequest+DataTask
public extension URLRequest {
var dataTask: URLSessionDataTask
@available(macOS 10.15, iOS 13, watchOS 6, tvOS 13, *)
var dataTaskPublisher: URLSession.DataTaskPublisher
func dataTask(withHandler handler: @escaping (Data?, URLResponse?, Error?) -> Void) -> URLSessionDataTask
}
URLRequest+DataTasks
public extension URL {
// MARK: URLSession DataTasks
var dataTask: URLSessionDataTask {
URLSession.shared.dataTask(with: self)
}
@available(macOS 10.15, iOS 13, watchOS 6, tvOS 13, *)
var dataTaskPublisher: URLSession.DataTaskPublisher {
URLSession.shared.dataTaskPublisher(for: self)
}
func dataTask(withHandler handler: @escaping (Data?, URLResponse?, Error?) -> Void) -> URLSessionDataTask {
URLSession.shared.dataTask(with: self, completionHandler: handler)
}
// ...
}