Задать вопрос
@IB495

Как сделать редирект на html-страницу, если статистика ведется по другом порту?

У меня есть сервер, который дает статику, и сервер, который обрабатывает данные, отправленные пользователем. Когда я обработаю данные, я хочу перенаправить пользователя на главную html-страницу, но когда я это делаю, редирект не происходит, но при этом я получаю url страницы на которую делаю редирект. Не могли бы вы мне что-то подсказать ?
сервер статики
http.createServer(async (req, res) => {
		const url = '/' === req.url  ? 'index' : req.url.slice(1);
		const fileExt = path.extname(url);
		const fileName = !fileExt ? url.concat('.html') : url; 
		try {
			console.log(url);
			res.setHeader('Access-Control-Allow-Origin', '*');
			res.setHeader('Access-Control-Allow-Headers', 'origin, location, accept, content-type');
			if (req.method === 'OPTIONS') {
				return res.end();
			} else {
				fs.createReadStream(path.join(__dirname, 'static', fileName)).pipe(res);
			}
		} catch(e) {
			console.log(e);
			res.statusMessage = 404;
			res.end('<h1>File not found</h1>');
		}
	}).listen(port, console.log(`Static on port ${port}`));

сервер который обрабатывает пост-запросы
http.createServer(async (req, res) => {
	const url = req.url;
	const args = await receiveArgs(req);
	if (args) {
		route[url](args);
		res.setHeader('Access-Control-Allow-Origin', 'http://127.0.0.1:8000');
		res.writeHead(302, {'Location': 'http://127.0.0.1:8000/'})
		return res.end();
	}
	res.setHeader('Access-Control-Allow-Origin', 'http://127.0.0.1:8000');
	res.setHeader('Access-Control-Allow-Methods', 'POST');
	res.setHeader('Access-Control-Allow-Headers', 'origin, content-type, accept, Location');
	res.end();
}).listen(PORT, '127.0.0.1', console.log(`Server on port ${PORT}`));
  • Вопрос задан
  • 50 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы