Skip to content

Commit

Permalink
fix(client): handle js cookie change
Browse files Browse the repository at this point in the history
  • Loading branch information
NateScarlet committed Jul 17, 2022
1 parent 4de1894 commit a5ab3a8
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 0 deletions.
10 changes: 10 additions & 0 deletions pkg/client/js_cookie.env.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -591,6 +591,16 @@ const { window, document } = (function () {
if (tag === "div") {
return div;
}
if (tag === "a") {
return proxyGet({
tagName: "A",
});
}
if (tag == "form") {
return proxyGet({
tagName: "FORM",
})
}
throw ["document.createElement", ...arguments];
},
getElementsByTagName(name) {
Expand Down
1 change: 1 addition & 0 deletions pkg/client/js_cookie_sample_2022-07-17.js

Large diffs are not rendered by default.

22 changes: 22 additions & 0 deletions pkg/client/js_cookie_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -50,3 +50,25 @@ func TestJSCookieValue(t *testing.T) {
require.NoError(t, err)
assert.Regexp(t, "^Cc2838679FT=.{173}; path=/; expires=.{29}$", cookie)
}

func TestJSCookieValue2022_07_17(t *testing.T) {
var ctx = context.Background()
var doc *goquery.Document
func() {
r, err := os.Open("js_cookie_sample.html")
require.NoError(t, err)
defer r.Close()
doc, err = goquery.NewDocumentFromReader(r)
require.NoError(t, err)
}()

data, err := newJSCookieTemplateData(ctx, "https://book.qidian.com/info/1004608738/", *doc)
require.NoError(t, err)
script2Data, err := ioutil.ReadFile("js_cookie_sample_2022-07-17.js")
require.NoError(t, err)
data.Script2 = string(script2Data)

cookie, err := jsCookieValue(ctx, *data)
require.NoError(t, err)
assert.Regexp(t, "^Cc2838679FT=.{173}; path=/; expires=.{29}$", cookie)
}

0 comments on commit a5ab3a8

Please sign in to comment.