[MIRROR: https://git.mills.io/prologic/go-gopher] Gopher (RFC 1436) protocol library for the Go (Golang) programming language supporting both client and server
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
Matt Baer 8429778966 Change path to code.as/writefreely/go-gopher vor 2 Jahren
.github Upgrade to GitHub-native Dependabot (#18) vor 2 Jahren
examples Remove some large files vor 2 Jahren
testdata Fix tests (#12) vor 3 Jahren
.drone.yml Fix Drone CI triggers vor 2 Jahren
.gitignore Remove some large files vor 2 Jahren
LICENSE Added LICENSE vor 7 Jahren
Makefile Migrate to Drone CI vor 5 Jahren
README.md Change path to code.as/writefreely/go-gopher vor 2 Jahren
_config.yml Set theme jekyll-theme-hacker vor 5 Jahren
go.mod Change path to code.as/writefreely/go-gopher vor 2 Jahren
go.sum Fix tests and add Drone CI config vor 2 Jahren
gopher.go Fix tests and add Drone CI config vor 2 Jahren
gopher_test.go Change path to code.as/writefreely/go-gopher vor 2 Jahren

README.md

Gopher protocol library for Golang

Build Status

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 code.as/writefreely/go-gopher

Usage

import "code.as/writefreely/go-gopher"

Example

Client

package main

import (
	"fmt"

	"code.as/writefreely/go-gopher"
)

func main() {
	res, _ := gopher.Get("gopher://gopher.floodgap.com/")
	bytes, _ := res.Dir.ToText()
	fmt.Println(string(bytes))
}

Server

package main

import (
	"log"

	"code.as/writefreely/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 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