0

我使用 AngularJS 和 NodeJS 作为后端。我有 2 个路由文件 - route1.api.jsroute2.api.js。它们在server.js中的使用如下:

const route1Api= require("./src/api/route1.api");
const route2Api= require("./src/api/route2.api");

app.use("/api/route1/", route1Api);
app.use("/api/route2/", route2Api);

route1.api.jsroute2.api.js具有类似的代码,如下所示:

const router = express.Router();
router.post("/whatever", (req, res) => {
// Code
});
module.exports = router;

我正在从 2 个不同的 Angular 数据服务文件访问这些路由:

route1.data.service.js

postRoute1() {
    console.log("Route1");
    return this._http
      .post("/api/route1/whatever", postData)
      .map(result => console.log(result));
}

route2.data.service.js

postRoute2() {
    console.log("Route2");
    return this._http
      .post("/api/route2/whatever", postData)
      .map(result => console.log(result));
}

现在,问题是route1工作正常,但route2不是。postRoute2 ()方法仅适用于console.log()行,但不能超出此范围。可能是什么问题呢?

route2.api.js代码:

router.post("/whatever", (req, res) => {
  console.log("API hit");
  User.find({}, function(err, user) {
    if (err) res.status(500);
    if (!user) res.status(204);
    res.status(200).json(user);
  });
});
4

1 回答 1

0

修改 postRoute2() 方法为:

postRoute2() {
    console.log("Route2");
    return this._http
      .post("/api/route2/whatever", postData)
      .subscribe(result => console.log(result));
}
于 2018-03-09T11:14:42.767 回答