我有一個 Go 程序,它只是模擬使用 Surf ( ) 訪問的本地網(wǎng)頁,gopkg.in/headzoo/surf.v1但頁面上的 Javascript 似乎沒有被執(zhí)行。只是為了測試我讓網(wǎng)頁對服務(wù)器上的另一個路由進行 ajax 調(diào)用,該路由只會在服務(wù)器端輸出響應(yīng)。<html><head><script src="jquery.min.js"></script></head><body><script>$.ajax ({ url : "/test", type : "GET", success : function(res) {}, error : function(res) {}});</script></body></html>然后 Go Surf 功能訪問頁面,該路由還在服務(wù)器端輸出響應(yīng),該響應(yīng)正在顯示,但來自 ajax 請求的響應(yīng)未顯示。func simulateVisit() { bow := surf.NewBrowser() bow.SetUserAgent("LocalCrawler/1.0") err := bow.Open("http://127.0.0.1/page") if err != nil { fmt.Println(err) }}為了確保它只發(fā)生在 Surf 中,我還使用 Chromedp ( github.com/chromedp/chromedp) 對其進行了測試,它給出了正確的兩種響應(yīng)。這是 Surf 的限制還是我在做一些愚蠢的事情?
Golang 模擬頁面訪問:沖浪不觸發(fā) Javascript
慕蓋茨4494581
2022-10-24 15:13:37