You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
continuous-integration/drone/push Build is passing
Details
|
1 year ago | |
---|---|---|
.github | 2 years ago | |
examples | 2 years ago | |
testdata | 3 years ago | |
.drone.yml | 1 year ago | |
.gitignore | 2 years ago | |
LICENSE | 7 years ago | |
Makefile | 4 years ago | |
README.md | 1 year ago | |
_config.yml | 4 years ago | |
go.mod | 1 year ago | |
go.sum | 1 year ago | |
gopher.go | 1 year ago | |
gopher_test.go | 1 year ago |
README.md
Gopher protocol library for Golang
This is a standards compliant Gopher library for the Go programming language implementing the RFC 1436 specification. The library includes both client and server handling and examples of each.
Installation
$ go get git.mills.io/prologic/go-gopher
Usage
import "git.mills.io/prologic/go-gopher"
Example
Client
package main
import (
"fmt"
"git.mills.io/prologic/go-gopher"
)
func main() {
res, _ := gopher.Get("gopher://gopher.floodgap.com/")
bytes, _ := res.Dir.ToText()
fmt.Println(string(bytes))
}
Server
package main
import (
"log"
"git.mills.io/prologic/go-gopher"
)
func hello(w gopher.ResponseWriter, r *gopher.Request) {
w.WriteInfo("Hello World!")
}
func main() {
gopher.HandleFunc("/hello", hello)
log.Fatal(gopher.ListenAndServe("localhost:70", nil))
}
Related
Related projects:
-
gopherproxy gopherproxy is Gopher to HTTP proxy that uses go-gopher for all of its core functionality.
-
gopherclient gopherclient is a cross-platform QT/QML GUI Gopher Client using the gopherproxy library as its backend.
License
MIT