Skip to content

Instantly share code, notes, and snippets.

@chockenberry
Created November 27, 2023 23:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save chockenberry/1a26adfeca452d8e75d0e9c62e1e2485 to your computer and use it in GitHub Desktop.
Save chockenberry/1a26adfeca452d8e75d0e9c62e1e2485 to your computer and use it in GitHub Desktop.
Get URL for a published NetService instance
extension NetService {
var url: URL? {
get {
if self.port != -1 {
var urlComponents = URLComponents()
urlComponents.scheme = "http"
if let hostName = self.hostName {
urlComponents.host = hostName.lowercased()
}
else {
urlComponents.host = ProcessInfo.processInfo.hostName + "."
}
if self.port != 80 {
urlComponents.port = self.port
}
return urlComponents.url
}
else {
return nil
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment