Skip to content

Latest commit

 

History

History
167 lines (132 loc) · 3.41 KB

README_zh.md

File metadata and controls

167 lines (132 loc) · 3.41 KB

vulfocus-go

GitHub (pre-)release stars license

English document

Vulfocus API

Vulfocus APIVulfocus 为开发提供的 RESUFul API接口,允许开发者在自己的项目中集成 Vulfocus

Vulfocus SDK

基于 Vulfocus API 编写的 GOSDK,方便Golang开发者快速将 Vulfocus 集成到自己的项目中。

添加依赖

go get github.com/fofapro/vulfocus-go

使用

字段名称 描述
addr Vulfocus 地址
username 用户登陆 Vulfocus 使用的用户名
licence 前往 个人中心 查看 API Key

使用 接口地址用户账号licence 创建一个客户端,即可调用相关函数。

获取镜像

package main

import (
    "fmt"
    "github.com/fofapro/vulfocus-go"
)

const (
    addr     = "http://vulfocus.fofa.so"
    username = ""
    licence  = ""
)

func main() {
    client := vulfocus.NewClient(addr, username, licence)
    err, images := client.GetImages()
    if err != nil {
        return
    }
    fmt.Printf("get %d images", len(images))
    if len(images) == 0 {
        return
    }
}

创建环境

package main

import (
    "fmt"
    "github.com/fofapro/vulfocus-go"
)

const (
    addr     = "http://vulfocus.fofa.so"
    username = ""
    licence  = ""
)

func main() {
    client := vulfocus.NewClient(addr, username, licence)
    err, images := client.GetImages()
    if err != nil {
        return
    }
    fmt.Printf("get %d images", len(images))
    if len(images) == 0 {
        return
    }
    err, exposed := client.Start(images[0].Name)
    if err != nil {
        return
    }
    println(exposed.Host, exposed.Port)
}

停止环境

package main

import (
    "fmt"
    "github.com/fofapro/vulfocus-go"
)

const (
    addr     = "http://vulfocus.fofa.so"
    username = ""
    licence  = ""
)

func main() {
    client := vulfocus.NewClient(addr, username, licence)
    err, images := client.GetImages()
    if err != nil {
        return
    }
    fmt.Printf("get %d images", len(images))
    if len(images) == 0 {
        return
    }
    err = client.Stop(images[0].Name)
    if err != nil {
        return
    }
}

删除环境

package main

import (
    "fmt"
    "github.com/fofapro/vulfocus-go"
)

const (
    addr     = "http://vulfocus.fofa.so"
    username = ""
    licence  = ""
)

func main() {
    client := vulfocus.NewClient(addr, username, licence)
    err, images := client.GetImages()
    if err != nil {
        return
    }
    fmt.Printf("get %d images", len(images))
    if len(images) == 0 {
        return
    }
    err = client.Delete(images[0].Name)
    if err != nil {
        return
    }
}

更新日志

2021-11-25

- 版本发布