MCPcopy
hub / github.com/pingc0y/URLFinder / JsState

Function JsState

crawler/state.go:17–111  ·  view source on GitHub ↗

检测js访问状态码

(u string, i int, sou string)

Source from the content-addressed store, hash-verified

15
16// 检测js访问状态码
17func JsState(u string, i int, sou string) {
18
19 defer func() {
20 config.Wg.Done()
21 <-config.Jsch
22 PrintProgress()
23 }()
24 if cmd.S == "" {
25 result.ResultJs[i].Url = u
26 return
27 }
28 if cmd.M == 3 {
29 for _, v := range config.Risks {
30 if strings.Contains(u, v) {
31 result.ResultJs[i] = mode.Link{Url: u, Status: "疑似危险路由"}
32 return
33 }
34 }
35 }
36
37 //加载yaml配置(proxy)
38 //配置代理
39 var redirect string
40 ur, err2 := url.Parse(u)
41 if err2 != nil {
42 return
43 }
44 request, err := http.NewRequest("GET", ur.String(), nil)
45 if err != nil {
46 result.ResultJs[i].Url = ""
47 return
48 }
49 if cmd.C != "" {
50 request.Header.Set("Cookie", cmd.C)
51 }
52 //增加header选项
53 request.Header.Set("User-Agent", util.GetUserAgent())
54 request.Header.Set("Accept", "*/*")
55 //加载yaml配置
56 if cmd.I {
57 util.SetHeadersConfig(&request.Header)
58 }
59 //tr := &http.Transport{
60 // TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
61 //}
62 //client = &http.Client{Timeout: time.Duration(cmd.TI) * time.Second,
63 // Transport: tr,
64 // CheckRedirect: func(req *http.Request, via []*http.Request) error {
65 // if len(via) >= 10 {
66 // return fmt.Errorf("Too many redirects")
67 // }
68 // if len(via) > 0 {
69 // if via[0] != nil && via[0].URL != nil {
70 // result.Redirect[via[0].URL.String()] = true
71 // } else {
72 // result.Redirect[req.URL.String()] = true
73 // }
74 //

Callers 2

ValidateFFFunction · 0.85
startFunction · 0.85

Calls 4

GetUserAgentFunction · 0.92
SetHeadersConfigFunction · 0.92
ReadAllLimitedFunction · 0.92
PrintProgressFunction · 0.85

Tested by

no test coverage detected