Restivus返回HTML模板?

时间:2016-10-06 10:11:16

标签: meteor restivus

我正在尝试为我的METEOR应用程序制作api。 我查看了https://atmospherejs.com/simple/resthttps://atmospherejs.com/xcv58/collection-api,但这不起作用。 现在我在restivus:https://atmospherejs.com/nimble/restivus

我得到的问题是,当我试图调用api时,它总是返回我的HTML模板,否则我需要一个json响应......

这是我的api =>

的代码

在server.js中:

// Global API configuration
    var Api = new Restivus({
        apiPath: 'api/',
        auth: {
          token: 'auth.apiKey',
          user: function () {
            return {
              userId: this.request.headers['user-id'],
              token: this.request.headers['login-token']
            };
          }
        },
        defaultHeaders: {
          'Content-Type': 'application/json'
        },
        onLoggedIn: function () {
          console.log(this.user.username + ' (' + this.userId + ') logged in');
        },
        onLoggedOut: function () {
          console.log(this.user.username + ' (' + this.userId + ') logged out');
        },
        prettyJson: true,
        useDefaultAuth: true,
        version: 'v1'
    });

    Api.addCollection('coupons');

当我尝试使用一些用户名和密码数据对http://localhost:3000/api/v1/login/进行卷曲时,它会返回我所有的html模板...

有人知道解决方案或者已经有这个问题吗?

感谢您将来的答案:)

2 个答案:

答案 0 :(得分:0)

问题是您正在使用文档警告使用的API选项集。检查代码here正上方的评论。如果要复制并粘贴一些代码以开始使用,可以使用code from the quick start example。您只需要以下内容即可获得您正在寻找的API:

var Api = new Restivus({
  useDefaultAuth: true,
  version: v1
});

Api.addCollection('coupons');

答案 1 :(得分:0)

您应该设置以下标头:Content-Type:'application / x-www-form-urlencoded; charset = UTF-8' 在您的请求中