【发布时间】:2017-06-26 09:49:08
【问题描述】:
我遇到了这个问题,我向 API 发送请求以检索所有用户,登录函数在调用时被调用(index.vue),它试图转到 api/users/all,在这种情况下应该返回所有该集合中的用户。
使用 Postman,API 返回正确的结果,如果我在发送响应之前 console.log 在 routeUsers 中的输出,它将所有正确的数据输出到控制台
返回index.vue时,响应状态码为0。
我在网上查看了一些关于 CORS 标头的内容,但我认为这不适用于我,并且有关响应的其他内容已被取消,
任何人都可以为我解释一下并帮助我尝试解决它吗?!
API main.js
var app = express();
var users = require('./routes/routeUsers');
app.use('/users', users);
module.exports = app;
api/models/users.js
var db = require('../Utilities/db')
module.exports.all = function(cb) {
var collection = db.get().collection('users')
collection.find().toArray(function(err, docs) {
cb(err, docs)
})
}
api/routes/routeUsers.js
var express = require('express')
, router = express.Router()
var user = require('../models/users');
router.get('/all', function(req, res) {
user.all(function(err, users) {
res.send(users);
})
})
索引.vue
export default {
data: function () {
return {
username: '',
password: '',
users: []
}
},
methods: {
login: function() {
Vue.http.get('/api/users/all').then((response) => {
console.log("SUCCESS",response);
this.users = response.body;
console.log(users);
}, function (error) {
console.log("Error", error.status); // handle error
});
}
}
};
【问题讨论】:
标签: ajax node.js express vue.js vue-resource