diff --git a/packages/vjudge/package.json b/packages/vjudge/package.json index 3d5a3e680..4aea5e7ce 100644 --- a/packages/vjudge/package.json +++ b/packages/vjudge/package.json @@ -1,6 +1,6 @@ { "name": "@hydrooj/vjudge", - "version": "1.0.0", + "version": "1.0.1", "description": "Submit problems to remote oj", "main": "package.json", "repository": "https://github.com/hydro-dev/Hydro.git", diff --git a/packages/vjudge/src/providers/codeforces.ts b/packages/vjudge/src/providers/codeforces.ts index cb1ba02e7..54adfa2bc 100644 --- a/packages/vjudge/src/providers/codeforces.ts +++ b/packages/vjudge/src/providers/codeforces.ts @@ -56,7 +56,11 @@ export default class CodeforcesProvider implements IBasicProvider { } async getCsrfToken(url: string) { - const { text: html } = await this.get(url); + const { text: html, header } = await this.get(url); + if (header['set-cookie']) { + await this.save({ cookie: header['set-cookie'] }); + this.cookie = header['set-cookie']; + } const $dom = new JSDOM(html); return $dom.window.document.querySelector('meta[name="X-Csrf-Token"]').getAttribute('content'); }