2017-07-12 48 views
0

所以我在端口8080上运行它。端口转发已经建立并且正在工作。在Raspberry Pi上运行时Node.js w Express没有响应

每当我输入我的no-ip域名时,我会在屏幕上得到响应,但是当我从我的网站发出请求时,它会在Raspberry上记录请求,但是没有响应可见Chrome开发人员工具。

我也收到此错误信息:POST “名称的API的”网:: ERR_EMPTY_RESPONSE

这是什么原因呢?当我在本地运行我的api时,我的路线完美运行。

module.exports = function(app) { 
    app.get('/', requireAuth, function(req, res) { 
    res.send({ message: 'OMG, You made it, you deserve a drink!' }); 
    }); 

这就是我的反应如何应用程序看起来像:

const ROOT_URL = *"name of the api"/*; 
. 
. 
. 

    export function fetchMessage() { 
     return function(dispatch) { 
     axios.get(ROOT_URL, { 
      headers: { authorization: localStorage.getItem('token') } 
     }) 
      .then(response => { 
      dispatch({ 
       type: FETCH_MESSAGE, 
       payload: response.data.message 
      }); 
     }); 
    } 
}; 

难道Node.js的一个典型问题,快速,反应或者也许是在Raspi?非常感谢!

回答

1

可能是一个CORS问题,因为问题只发生在试图从浏览器中使用API​​时。一个可能的解决方案是在您的快速应用程序使用的cors包:

const express = require('express'); 
const cors = require('cors'); 

... 

const app = express(); 
app.use(cors()); 

... 

注意:这使得所有CORS请求。

+0

谢谢。我今天会尝试。我想知道这可能是没有https证书的安全问题。 – TheGabornator

+0

不,我添加了Cors,但不幸的是它仍然无法工作。 – TheGabornator

相关问题