Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.07.2022, 12:00   #1
франц1946
 
Регистрация: 23.06.2020
Сообщений: 6
По умолчанию Отправить запрос обойдя CORS policy

Добрый день. Как считать json? Постоянно ошибка Access to fetch at 'http://localhost:3002/' from origin 'null' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

Клиентская часть. index.html
Код:
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>COR</title>
  <style>
 *, *::after, *::before {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	} 
body {
	text-align: center;
	background: #ee82ee55;
	}				
body, input, button {
	font-family: sans-serif;
	font-size: 28px;
	}
button {
	font-size: 18px;
	} 
.door {
	margin: 75px auto;  
	padding: 25px;
	border-radius: 15px;
	width: 40%;
	background: #00ffff80;
	cursor: pointer;
	}
  </style>  
</head>
<body>
<div class="door">get from js node</div>

<script>
const door=document.querySelector('.door');
door.addEventListener('click',(e)=>{
	e.stopPropagation();
	void (async()=>{
		const i=await fetch("http://localhost:3002");
		const t=await i.json();
		alert(t['message']);	
		})()
	});
</script>   
</body>
</html>
Серверная часть. app.js. Запущена на node.
Код:
// Require packages and set the port
const express = require('express');
const bodyParser = require('body-parser');//промежуточное ПО для разбора тела запросов
const port = 3002;
const app = express();

// Use Node.js body parsing middleware
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
    extended: true,
}));
 
app.get('/', (request, response) => {
    response.send({
        message: 'Node.js and Express REST API'}
    );
});
 
// Start the server
const server = app.listen(port, (error) => {
    if (error) return console.log(`Error: ${error}`); 
    console.log(`Server listening on port ${server.address().port}`);
});
Заранее спасибо.

P.S. на запрос курлом
Код:
curl -i localhost:3002
отвечает
Код:
HTTP/1.1 200 OK
X-Powered-By: Express
Content-Type: application/json; charset=utf-8
Content-Length: 42
ETag: W/"2a-jN04K6SYZAwM3XlMMD6uSsxeom4"
Date: Sun, 24 Jul 2022 15:29:34 GMT
Connection: keep-alive

{"message":"Node.js and Express REST API"}

Добавил и заработало
Код:
app.get('/', (request, response) => {
	response.setHeader('Access-Control-Allow-Origin','*');
    response.send({
        message: 'Node.js and Express REST API Esmerald'}
    );
});

Последний раз редактировалось франц1946; 25.07.2022 в 09:23.
франц1946 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
flask, cors запрос на другой сайт dbalor Python 0 26.07.2019 12:46
Отправить POST запрос из PHP Женя32 PHP 7 12.08.2017 12:15
Get обойдя сертификат GenniY Работа с сетью в Delphi 4 04.01.2011 06:21
Как отправить web-запрос GET Никки Общие вопросы .NET 1 19.08.2009 08:44
Отправить запрос kommunist Общие вопросы .NET 4 30.06.2008 00:47