Однажды у меня было какое-то намеренно ужасное и устаревшее Javascript, который я был вынужден использовать в качестве обходного увлечения для ограничения на приложение для автоматизации блокировки на моем iPhone, названном «короткометражные». Видите ли, бывают случаи, когда мне нужны автоматизации, которые я пишу для ярлыков, чтобы получить доступ к API или отправить некоторые вызовы API. У ярлыков есть внутренняя библиотека запросов API под названием «Получить содержимое URL», но погранично бесполезно, потому что она только возвращает тела реагирования. Поскольку мне понадобились дополнительные данные, такие как код состояния запроса, я сделал свою собственную замену запрашивания API API в JavaScript. Это то, как это выглядело в ярлыках: < /p>
Код: Выделить всё
data:text/html,o={error:"NetworkError",message:"You%20are%20offline!",stack:null};if(navigator.onLine){r=new%20XMLHttpRequest();r.open("GET","https://jsonplaceholder.typicode.com/users",false);try{r.send();o={"Status":r.status,"Response":r.responseText}}catch(e){o={error:e?.name??"UnknownError",message:e?.message??String(e),stack:e?.stack??null};}};document.write(JSON.stringify(o));
< /code>
И вот он как более легкий фрагмент человека: < /p>
"
o = {
error: "NetworkError",
message: "You are offline!",
stack: null
};
if (navigator.onLine) {
r = new XMLHttpRequest();
r.open("GET", "https://jsonplaceholder.typicode.com/users", false);
try {
r.send();
o = {
"Status": r.status,
"Response": r.responseText
}
} catch (e) {
o = {
error: e?.name ?? "UnknownError",
message: e?.message ?? String(e),
stack: e?.stack ?? null
};
}
};
document.write(JSON.stringify(o));
< /code>
< /div>
< /div>
< /p>
Я бы затем извлекал текст с веб -страницы JavaScript, а затем перешел к моей жизни. Тем не менее, я обнаружил, что некоторые URL -адреса проходили в это только ровное, не работают. Например, возьмите https://zenquotes.io/api/random < /div>
< /div>
< /p>
и вот его простые URL-эквивалент: < /p>
data:text/html,o={error:"NetworkError",message:"You%20are%20offline!",stack:null};if(navigator.onLine){r=new%20XMLHttpRequest();r.open("GET","https://zenquotes.io/api/random",false);try{r.send();o={"Status":r.status,"Response":r.responseText}}catch(e){o={error:e?.name??"UnknownError",message:e?.message??String(e),stack:e?.stack??null};}};document.write(JSON.stringify(o));
< /code>
На мобильном устройстве все, что он делает, - это смутная ошибка "Networkerr", объясняющая, что она не может подключиться к Интернету. К счастью, я получаю более словесную ошибку, когда запускаю код на своем компьютере, говоря, что он «не загрузил ». Понятия не имею, что это значит, поч ... tprequests