【问题标题】:VueResource Vue.http.get Response Status Code 0VueResource Vue.http.get 响应状态码 0
【发布时间】: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


    【解决方案1】:

    问题在于输入位于表单标签中。删除了 Form 标签并且工作正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-30
      • 2019-08-24
      • 2023-03-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-18
      相关资源
      最近更新 更多