ionic的节点JS标头问题

时间:2019-02-16 18:56:14

标签: node.js json ionic-framework frameworks

所以我正在使用离子框架来制作我的应用程序,并使用nodeJS作为我的后端,但是我仍然是菜鸟,而且我似乎在4天后仍无法解决,希望有人可以回答我这个问题以及为什么会被赞赏。

所以对于我的离子客户端,我这样做是为了发出http.post请求

 progress() {
    var headers = new HttpHeaders();
    headers.append('Accept', 'application/json');
    headers.append('Content-Type', 'application/json');
    let options = {headers: headers};
    let postData = {
        username: this.username,
        email: this.email,
        password1: this.password1,
        password2: this.password2
    };
    this.http.post('localhost:4000/api/users', postData, options,).subscribe(
        data => {
            console.log(data);
        },
        error => {
            console.log(error);
        });
}

这就是我正在做的从服务器获取数据的操作,但这不起作用

// Packages
let express = require('express');
var request = require('request');
var bodyParser = require('body-parser');
var cors = require('cors');


const app = express();
app.use(cors({origin: 'http://localhost:8100'}));
const port = 4000;

app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());

// Whenever you enter localhost:4000/ //
app.get('/', function (req, res) {
res.send(('Server runs'));
});

app.listen(port, () => console.log(`app listening on port ${port}!`));


app.get('/api/users', (req, res) => {
res.send('api/users page');

request.get({
    uri: 'http://localhost:8100/create-account'
}, function (err, res, body) {
    console.log('error:', err); // Print the error if one occurred and handle it
    console.log('statusCode:', res && res.statusCode); // Print the response status code if a response was received
    res.send(body);
});
});

我还尝试了'http://localhost:8100'和'localhost:8100' 有人帮我

1 个答案:

答案 0 :(得分:0)

您需要为您的POST请求添加处理程序。为此,请使用app.post,它看起来像这样

app.post('/api/users', (req, res) => {
  // You can find your data here
  const data = req.body;
  console.log(data);

  // Send back a response
  res.sendStatus(200);
});