Как получить данные от локального сервера?
ДД, помогите помочь как работает связь клиент сервер, есть кусочек кода сервера
app.get("/", (req, res) => {
res.json({ name: "Nameless", status: true, id: 1 });
});
app.get("/users", (req, res) => {
res.send("PAGES");
});
app.listen(port, (err) => {
if (err) {
return console.log(err);
}
console.log(`start on port: ${port}`);
});
и запрос к нему
async function getData() {
let res = await fetch("http://localhost:3000", {
mode: "no-cors",
});
let data = await res.json();
console.log(data);
}
но никаких признаков, помогите пож-та понять как правильно делать запросы , где я ошибся?
Ответы (1 шт):
Автор решения: nörbörnën
→ Ссылка
Сервер:
const express = require('express')
const cors = require('cors')
const app = express();
app.use(cors());
app.options('*', cors());
app.get('/', (req, res) => {
res.json({ name: "Nameless", status: true, id: 1 });
});
const port = process.env.PORT|| 3000;
const host = 'localhost';
app.listen(port, host, () => {
console.log(`start on port: ${port}`);
});
Клиент:
<!doctype html>
<html lang="ru">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>Hello, world!</title>
<script type="text/javascript">
async function getData() {
try {
let res = await fetch("http://localhost:3000", {
mode: 'cors'
});
if (!res.ok) {
console.log(res);
throw new Error( res.statusText || res.status );
}
let data = await res.json();
console.log(data);
} catch (err) {
console.error(err);
alert('Произошла ошибка...');
}
}
</script>
</head>
<body>
<h1>Hello</h1>
<div>
<button onclick="getData()">GET DATA BUTTON</button>
</div>
</body>
</html>