Difference between revisions of "API:priv:get-submit"
From EjudgeWiki
(...) |
(...) |
||
| Line 51: | Line 51: | ||
} | } | ||
} | } | ||
| + | |||
| + | Пример кода на python: | ||
| + | |||
| + | import requests | ||
| + | import os | ||
| + | |||
| + | URL = 'http://HOST/cgi-bin/master' | ||
| + | TOKEN = 'TOKEN' | ||
| + | CONTEST_ID = 1 | ||
| + | RUN_ID = 50 | ||
| + | |||
| + | headers = { | ||
| + | "Authorization": "Bearer AQAA" + TOKEN | ||
| + | } | ||
| + | |||
| + | data = { | ||
| + | "contest_id" : CONTEST_ID, | ||
| + | "json" : 1, | ||
| + | "action" : "run-status-json", | ||
| + | "run_id" : RUN_ID, | ||
| + | } | ||
| + | |||
| + | response = requests.post(URL, data=data, headers=headers) | ||
| + | print(response.json()) | ||
Revision as of 17:30, 2 February 2023
Навигация: Главная страница/Система ejudge/Использование/API/get-submit (привилегированный)
Запрос возвращает информацию о посылке, отправленной с помощью submit-run-input
Уровень доступа: администратор в контесте (аутентификация с помощью API key или EJSID/session_id).
Method: GET
Параметры:
- action (string) - строка get-submit
- submit_id (int64) - ID посылки
Response content type: application/json
В случае ошибки возвращается JSON:
{
"ok": false,
"server_time": UNIX-TIMESTAMP,
"action": "submit-run-input",
"error": {
"num": ERROR-CODE,
"symbol": ERROR-SYMBOL,
"message": ERROR-MESSAGE
}
}
В случае успеха возвращается JSON:
{
"ok": true,
"result": {
"submit_id": ID,
"user_id": USER-ID,
"prob_id": PROB-ID,
"lang_id": LANG-ID,
"status": STATUS,
"status_str": STATUS-SHORT-STR,
"compiler_output": COMPILER-MESSAGES,
"test_checker_output": TEST-CHECKER-MESSAGES,
"time": CPU-TIME,
"real_time": REAL-TIME,
"exit_code": PROCESS-EXIT-CODE,
"term_signal": TERMINATION-SIGNAL,
"max_memory_used": VIRT-MEM-USE,
"max_rss": MEMORY-USE,
"input": INPUT,
"output": OUTPUT-TEXT,
"error": ERROR-TEXT
}
}
Пример кода на python:
import requests import os URL = 'http://HOST/cgi-bin/master' TOKEN = 'TOKEN' CONTEST_ID = 1 RUN_ID = 50 headers = { "Authorization": "Bearer AQAA" + TOKEN } data = { "contest_id" : CONTEST_ID, "json" : 1, "action" : "run-status-json", "run_id" : RUN_ID, }
response = requests.post(URL, data=data, headers=headers) print(response.json())