#javascript
#javascript
Вопрос:
При нажатии кнопки на моем интерфейсе (соответствующая часть показана ниже)
async function getSample() {
const res = await fetch('/lookup/url');
const data = await res.text();
console.log(data);
}
document.getElementById('button').addEventListener('click', getSample);
async function getSample() {
fetch('http://localhost:3000/lookup/url')
.then(response => response.text())
.then(data => console.log(data));
}
Я получаю эту ошибку в терминале моего сервера узлов:
TypeError [ERR_INVALID_URL]: Invalid URL: url
и это в моей консоли:
Fetch failed loading: GET "http://localhost:3000/lookup/url"
Может кто-нибудь дать несколько советов относительно того, что я могу делать неправильно и как я мог бы исправить?
Не то, чтобы это имело значение, но серверная часть является express
Корректировка Re: Комментарии
async function getSample() {
const res = await fetch('/lookup/url');
const data = await res.text();
console.log(data);
document.getElementById('button').addEventListener
('click', getSample);
fetch('http://localhost:3000/lookup/url')
.then(response => response.text())
.then(data => console.log(data));
}
Комментарии:
1. Я думаю, что это может быть проблемой CORS. Интерфейс не
localhost:3000
включен, верно?2. @sebasaenz интерфейс отображается, когда я обращаюсь к localhost: 3000.
3. Почему у вас есть два определения
getSample()
?4. @Barmar Разве мне не нужно определить его, а затем использовать?
5. Вы объявляете одну и ту же функцию дважды? Вам не нужно это делать, достаточно одного раза
Ответ №1:
Избавьтесь от второго определения getSample()
. Вам нужно только одно определение функции, и лучше использовать относительный URL-адрес для доступа к ресурсам на том же сервере, что и интерфейс.
async function getSample() {
const res = await fetch('/lookup/url');
const data = await res.text();
console.log(data);
}
document.getElementById('button').addEventListener('click', getSample);