0

我在使用 Restivus 的 Meteor 1.4.1 应用程序中创建 API 端点时遇到问题。

这是我当前的代码:

import { Restivus } from 'meteor/nimble:restivus'
import { Stripe } from '../stripe/stripe'

export const loadApi = function(){
    console.log('loading api')
    var Api = new Restivus({
        enableCors: true, 
        prettyJson:true
    })

    Api.addRoute('/charge', {
        post: {
            action: function(){
                console.log('* Charging customer')
                console.log(this)
                console.log(this.bodyparams)
                Stripe.chargeCustomer('foobar',9900)
                return {
                    statusCode:204,
                    body:'foobar'
                }
            }
        }
    })
console.log(Api)
}

server/main.js Meteor.startup然后我在函数上加载这段代码。API 似乎已正确定义,因为打印具有正确属性console.log的 Restivus 对象。_routes

但是,发送 post 请求http://localhost:3000/api/charge不会触发该功能(console.log未执行)。

关于我的代码可能有什么问题的任何想法?我使用 Meteor 1.4.1,所以它可能是一个错误。

4

2 回答 2

2

尝试从您的路线中删除前导斜线,因此使用“charge”而不是“/charge”。

GitHub 上的相关问题。

于 2016-09-02T00:28:29.177 回答
0

我没有使用restivus,但是在您的代码中,应该Api.addRoute('/api/charge'代替Api.addRoute('/charge'吗?

于 2016-09-01T17:17:56.690 回答