aboutsummaryrefslogtreecommitdiff
path: root/Sources/swift-gopher/gopherHandler.swift
diff options
context:
space:
mode:
Diffstat (limited to 'Sources/swift-gopher/gopherHandler.swift')
-rw-r--r--Sources/swift-gopher/gopherHandler.swift8
1 files changed, 8 insertions, 0 deletions
diff --git a/Sources/swift-gopher/gopherHandler.swift b/Sources/swift-gopher/gopherHandler.swift
index cd150e3..0ac5c31 100644
--- a/Sources/swift-gopher/gopherHandler.swift
+++ b/Sources/swift-gopher/gopherHandler.swift
@@ -334,6 +334,14 @@ final class GopherHandler: ChannelInboundHandler {
return .string(prepareGopherMenu(path: preparePath()))
}
+ // Check if request is an HTTP url
+ if request.hasPrefix("URL:") {
+ let url = String(request.dropFirst(4))
+ return .string(
+ "<!DOCTYPE html><html><head><meta http-equiv=\"refresh\" content=\"0; url=\(url)\" /></head><body></body></html>"
+ )
+ }
+
// Again, fix for the iOS client. Might as well make my own client
if request.hasSuffix("\n") {
request = String(request.dropLast())