Сервер NodeJS на Raspberry Pi не вызывает функцию

262
Ashley

В настоящее время у меня установлен Raspian OS под управлением Raspian OS, который является сервером Node JS, работающим на порте 8080. Затем я настроил NGINX для использования в качестве обратного прокси-сервера для маршрутизации входящего трафика порта 80 на мой сервер на 8080.

Я пытаюсь заставить пользователя нажать кнопку HTML, которая затем вызывает функцию NodeJS, чтобы перенаправить их в Google. Теперь я не думаю, что проблема заключается в коде, потому что, если я запускаю сервер на своем локальном компьютере (не требуется nginx), все работает нормально. Однако, когда я пытаюсь получить доступ к серверу, работающему на Raspberry Pi, с моего локального компьютера: http://192.168.0.103/Authenticate.html работает и обслуживает HTML-страницу кнопкой, но затем вызывается функция http://192.168.0.103 /Authenticate.js дает мне ошибку 404.

Я считаю, что у меня что-то не так в этом обратном прокси-сервере, но я ОЧЕНЬ новичок в этом, так что понятия не имею, что. Любая помощь приветствуется.

NGINX файл по умолчанию

 { listen 80; listen [::]:80; root /home/pi/Cortana; server_name _; location / { proxy_pass http://127.0.0.1:8080; try_files $uri 4uri/ =404; } } 

OAuthTest.html

<form method="post" action="/Authenticate.js"> <input type="submit" value="Login with Reddit" > </form> 

OAuthTest.js

const http = require('http'); const request = require('request'); const fs = require('fs'); const express = require('express');  const app = express(); const server = http.createServer(app);  app.get('/', serveDefaultHTML); app.get('/OAuthTest.html', serveAuthHTML); app.post("/Authenticate.js", function(req, res){ console.log("Here"); redirecting(req, res); });   server.listen(8080, function(){ console.log("Listening on http://localhost:8080"); });  function serveAuthHTML(req, res){ fs.readFile("OAuthTest.html", function(err, data){ if (err){ res.writeHead(404, {'Content-Type': 'text/html'}); res.end(err); return; } res.writeHead(200, {'Content-Type': 'text/html'}); res.end(data); }); }  function serveDefaultHTML(req, res){ res.writeHead(200, {'Content-Type': 'text/html'}); res.write("Welcome to my server!") res.end("Request url: " + req.url); }  function redirecting(req, res){ console.log("Redirecting"); res.writeHead(301,  ); res.end(); } 
1

0 ответов на вопрос

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