mirror of
https://github.com/renbaoshuo/S2OJ.git
synced 2024-11-08 14:18:40 +00:00
Compare commits
2 Commits
d627490c67
...
afda9290fa
Author | SHA1 | Date | |
---|---|---|---|
afda9290fa | |||
70d5b541de |
@ -10,23 +10,23 @@ const logger = new Logger('remote/atcoder');
|
||||
|
||||
const LANGS_MAP = {
|
||||
C: {
|
||||
name: 'C (GCC 9.2.1)',
|
||||
id: 4001,
|
||||
name: 'C (GCC 12.2.0)',
|
||||
id: 5017,
|
||||
comment: '//',
|
||||
},
|
||||
'C++': {
|
||||
name: 'C++ (GCC 9.2.1)',
|
||||
id: 4003,
|
||||
name: 'C++ 20 (GCC 12.2.0)',
|
||||
id: 5001,
|
||||
comment: '//',
|
||||
},
|
||||
Pascal: {
|
||||
name: 'Pascal (FPC 3.0.4)',
|
||||
id: 4041,
|
||||
name: 'Pascal (FPC 3.2.2)',
|
||||
id: 5041,
|
||||
comment: '//',
|
||||
},
|
||||
Python3: {
|
||||
name: 'Python (3.8.2)',
|
||||
id: 4006,
|
||||
name: 'Python (CPython 3.11.4)',
|
||||
id: 5055,
|
||||
comment: '#',
|
||||
},
|
||||
};
|
||||
@ -193,9 +193,8 @@ export default class AtcoderProvider implements IBasicProvider {
|
||||
}
|
||||
|
||||
const [contestId, problemId] = parseProblemId(id);
|
||||
const csrf = await this.getCsrfToken(
|
||||
`/contests/${contestId}/tasks/${problemId}`
|
||||
);
|
||||
const referer = `/contests/${contestId}/tasks/${problemId}`;
|
||||
const csrf = await this.getCsrfToken(referer);
|
||||
|
||||
logger.debug(
|
||||
'Submitting',
|
||||
@ -208,11 +207,13 @@ export default class AtcoderProvider implements IBasicProvider {
|
||||
await next({ status: 'Submitting to AtCoder...' });
|
||||
|
||||
// TODO: check submit time to ensure submission
|
||||
const res = await this.post(`/contests/${contestId}/submit`).send({
|
||||
csrf_token: csrf,
|
||||
const res = await this.post(`/contests/${contestId}/submit`)
|
||||
.set('Referer', referer)
|
||||
.send({
|
||||
'data.TaskScreenName': problemId,
|
||||
'data.LanguageId': programType.id,
|
||||
sourceCode: code,
|
||||
csrf_token: csrf,
|
||||
});
|
||||
|
||||
if (res.error) {
|
||||
@ -233,7 +234,9 @@ export default class AtcoderProvider implements IBasicProvider {
|
||||
|
||||
const { text: status, header: status_header } = await this.get(
|
||||
`/contests/${contestId}/submissions/me`
|
||||
).retry(3);
|
||||
)
|
||||
.set('Referer', referer)
|
||||
.retry(3);
|
||||
|
||||
if (status_header['set-cookie']) {
|
||||
this.cookie = status_header['set-cookie'];
|
||||
|
Loading…
Reference in New Issue
Block a user