#javascript #json
#javascript #json
Вопрос:
Итак, я создаю IDE, используя judge0 api. Для компиляции и запуска требуется атрибут source_code для отправки. Теперь проблема заключается в следующем — если я пишу код в одной строке, то он показывает ошибку, а если пишу код в другой строке, используя «» после каждой строки, то также выдает ошибку. Теперь, как я должен отправить этот код в API.
const express = require("express");
const axios = require("axios");
const app = express();
const PORT = 3000;
const source =
'
#include <stdio.h>
int main(void) {
char name[10];
scanf("%s",name);
printf("hello %s",name);
return 0;
}
';
axios({
method: "POST",
url: "https://judge0.p.rapidapi.com/submissions",
headers: {
"content-type": "application/json",
"x-rapidapi-host": "judge0.p.rapidapi.com",
"x-rapidapi-key": "7b3dddefe1msheb8ab51a9e386f1p114d8ejsn6f6d49dd4d69",
accept: "application/json",
useQueryString: true,
},
data: {
language_id: 50,
source_code: source,
stdin: "world",
},
})
.then((response) => {
console.log(response.data);
})
.catch((error) => {
console.log(error);
});
app.listen(PORT, (req, res) => {
console.log("Started on port " PORT);
});
Комментарии:
1. Многострочность в javascript работает не так. Если вы подходите таким образом, преобразуйте их в строки шаблона (просто найдите строки шаблона в Google). Также вы можете добавить символ перевода строки (Windows one — это
rn
).2. Создание шаблонов решило проблему. Спасибо! Я где-то видел в stack overflow, как передавать многострочные строки. Там это было задано так, как я написал в приведенном выше коде, и это не сработало.
3. конечно, можно использовать оба, скорее всего, это связано с тем, что вы не включаете переводы строк и
#include <stdio.h>int main(void) {
вызываете проблему: playcode.io/657046