Documentation
¶
Index ¶
- Constants
- Variables
- func ExtractCharset(htmlContent []byte) stringdeprecated
- func ExtractContentTypeCharset(contentType string) (charset string)deprecated
- func InsertInto(s string, interval int, sep rune) stringdeprecated
- func ResponseDecoding(body []byte, label string) stringdeprecated
- type Banner
- type Fetcher
- type Options
Constants ¶
View Source
const ( DefaultMaxBodySize int64 = 5 * 1024 * 1024 DefaultMaxIconSize int64 = 512 * 1024 )
View Source
const JSExecuteTemplate = `` /* 813-byte string literal not displayed */
Variables ¶
View Source
var ( ErrFetch = errors.New("fetch failed") ErrInvalidURL = errors.New("invalid URL") )
View Source
var DefaultStackDepthLimit = 300
默认JavaScript执行的堆栈深度限制
Functions ¶
func ExtractCharset
deprecated
func ExtractContentTypeCharset
deprecated
func InsertInto
deprecated
func ResponseDecoding
deprecated
Types ¶
type Banner ¶
type Banner struct {
Uri string `json:"uri"`
BodyHash int32 `json:"body_hash"`
Body string `json:"body"`
Header string `json:"header"`
Headers map[string]string `json:"-"`
Title string `json:"title"`
StatusCode int `json:"status_code"`
Response string `json:"_"`
SSL bool `json:"ssl"`
Certificate string `json:"certificate"`
IconHash int32 `json:"icon_hash"`
IconType string `json:"icon_type"`
Charset string `json:"-"`
Cert *tls.ConnectionState `json:"-"`
IconURI string `json:"icon_uri"`
IconBytes []byte `json:"-"`
Compliance map[string]string `json:"-"`
}
Banner 表示爬取的网站信息
func (*Banner) CacheLower ¶
func (b *Banner) CacheLower()
缓存小写内容、避免匹配时进行大小写转换出现的性能损耗、虽然会增加内存开销、但是可以显著提高匹配速度
type Fetcher ¶
type Fetcher struct {
// contains filtered or unexported fields
}
Fetcher 定义HTTP探测和Banner采集的核心结构。
func NewFetcher ¶
type Options ¶
type Options struct {
DisableIcon bool
Proxy string
DebugReq bool
DebugResp bool
DisableJavaScript bool
MaxBodySize int64
MaxIconSize int64
Timeout time.Duration
Retries int // 失败后的额外重试次数,默认 0
// HTTPClient allows SDK users to provide a fully configured client.
// When set, appfinger uses it as-is and does not mutate transport settings.
HTTPClient *http.Client
// Transport allows SDK users to provide custom transport-level behavior.
// When set, appfinger wraps it in an http.Client and does not mutate it.
Transport *http.Transport
}
func DefaultOption ¶
func DefaultOption() *Options
Click to show internal directories.
Click to hide internal directories.