123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- package ipfs_api
- import (
- "log"
- "github.com/ipfs/go-ipfs-api"
- "net/http"
- )
- var sh *MyShell
- var Addr = "127.0.0.1:5001"
- type MyShell struct {
- shell.Shell
- Url string
- Client *http.Client
- }
- func reset() {
- if sh == nil || !sh.IsUp() {
- sh = &MyShell{
- Url: Addr,
- Client: &http.Client{
- Transport: &http.Transport{
- DisableKeepAlives: true,
- },
- },
- }
- sh.Shell = *shell.NewShellWithClient(sh.Url, sh.Client)
- if id, err := sh.ID(); err == nil {
- v0, _, _ := sh.Version()
- log.Println("ipfs version", v0, "node", id.ID, "online")
- }
- }
- }
- func Shell() *MyShell {
- reset()
- return sh
- }
- func init() {
- reset()
- }
|