概述
前提条件:安装go-ipfs,安装链接
1.golang版本:1.13.4
文件夹目录:
GOPATH/src/github.com/ipfs/demo
在demo文件夹下创建main.go
,代码如下:
package main
import (
"fmt"
"strings"
"os"
shell "github.com/ipfs/go-ipfs-api"
)
func main() {
// Where your local node is running on localhost:5001
sh := shell.NewShell("localhost:5001")
cid, err := sh.Add(strings.NewReader("hello world!"))
if err != nil {
fmt.Fprintf(os.Stderr, "error: %s", err)
os.Exit(1)
}
fmt.Printf("added %s", cid)
}
然后,设置GOPATH
,编译运行main.go
.
在其他终端打开ipfs系统
ipfs daemon
export GOPATH=XX/src
go run main
2.如果golang的版本是1.13.0以下,比如:1.10.3,则可以通过以下方法去运行。
首先,将golang
的版本设置为1.13.0以上,然后,进行下面的操作。
文件夹目录:
GOPATH/src/github.com/ipfs/demo
在demo文件夹下创建main.go
,代码如下:
package main
import (
"fmt"
"strings"
"os"
shell "github.com/ipfs/go-ipfs-api"
)
func main() {
// Where your local node is running on localhost:5001
sh := shell.NewShell("localhost:5001")
cid, err := sh.Add(strings.NewReader("hello world!"))
if err != nil {
fmt.Fprintf(os.Stderr, "error: %s", err)
os.Exit(1)
}
fmt.Printf("added %s", cid)
}
然后,设置GOPATH
,编译运行main.go
.
在其他终端打开ipfs系统
ipfs daemon
export GOPATH=XX/src
生成go.mod文件:
go mod init 项目名称
main.go文件所在的文件夹下(生成go.sum文件):
go build
go mod download
依赖包会自动下载到$GOPATH/pkg/mod,多个项目可以共享缓存的mod
下载的包在$GOPATH/pkg/mod
go mod vendor
从mod中拷贝到项目的vendor目录下,这样IDE就可以识别了!
再将golang的版本改为1.10.3,然后,进行项目的运行
go run main.go
编译运行后会出现下面的错误:
vendor/github.com/ipfs/go-ipfs-api/shell.go:101:17: tpt.Clone undefined (type *http.Transport has no field or method Clone)
解决办法:
vendor/github.com/ipfs/go-ipfs-api/shell.go中的第101行代码注释即可。
最后
以上就是舒服小猫咪为你收集整理的go-ipfs-api的使用教程的全部内容,希望文章能够帮你解决go-ipfs-api的使用教程所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复