Node.js 使用GET-in-Sails.js发出创建请求时禁用创建功能

Node.js 使用GET-in-Sails.js发出创建请求时禁用创建功能,node.js,sails.js,Node.js,Sails.js,我最近开始修补Sails.js,我希望将其用于我的项目的生产和移动后端。在Sails.js文档中,blueprint api中指出,此处的create方法调用应为POST类型 但即使使用GET请求,也会创建记录。如何在请求为GET类型时禁用create功能?如果要完全禁用BLUEPRINT API,可以查看config/blueprints.js。 但您可以创建一个警察,通过在“policies.js”中执行类似操作来限制对它的访问: UserController : { 'thisis

我最近开始修补Sails.js,我希望将其用于我的项目的生产和移动后端。在Sails.js文档中,blueprint api中指出,此处的create方法调用应为POST类型


但即使使用GET请求,也会创建记录。如何在请求为GET类型时禁用create功能?

如果要完全禁用BLUEPRINT API,可以查看
config/blueprints.js
。 但您可以创建一个警察,通过在“policies.js”中执行类似操作来限制对它的访问:

UserController : {
    'thisispublic' : true,
    'thisisnot' : false,
    'create' : ['hasAdminToken'],
    'update' : ['hasAdminToken'],
    'destroy' : ['hasAdminToken'],
}

请注意,控制器中隐含了一些操作-即使您没有“创建”功能,当它存在时,它也会由您的模型提供

如果要完全禁用BLUEPRINT API,可以查看
config/blueprints.js
。 但您可以创建一个警察,通过在“policies.js”中执行类似操作来限制对它的访问:

UserController : {
    'thisispublic' : true,
    'thisisnot' : false,
    'create' : ['hasAdminToken'],
    'update' : ['hasAdminToken'],
    'destroy' : ['hasAdminToken'],
}

请注意,控制器中隐含了一些操作-即使您没有“创建”功能,当它存在时,它也会由您的模型提供

像@paulogdm一样,我很惊讶你的GET创造了记录。但我找到了文件-这是帆船上的“捷径”路线,可以禁用。这些文件是

/config/blueprints.js
文件中,您需要添加:

module.exports = {

    // ...
    shortcuts: false

}

就像@paulogdm,我很惊讶你的GET创造了记录。但我找到了文件-这是帆船上的“捷径”路线,可以禁用。这些文件是

/config/blueprints.js
文件中,您需要添加:

module.exports = {

    // ...
    shortcuts: false

}

非常感谢。顺便说一句,我不想删除创建路由,只是不想在get请求中允许它。哦,我明白了。。。这真的很奇怪,因为Sails文档说明:`*GET/boat->BoatController.find**GET/boat/:id->BoatController.findOne**POST/boat->BoatController.create**PUT/boat/:id->BoatController.update**删除/boat/:id->BoatController.destroy`非常感谢。顺便说一句,我不想删除创建路由,只是不想在get请求中允许它。哦,我明白了。。。这真的很奇怪,因为Sails文档说明:`*GET/boat->BoatController.find**GET/boat/:id->BoatController.findOne**POST/boat->BoatController.create**PUT/boat/:id->BoatController.update**删除/boat/:id->BoatController.destroy`非常感谢。我错过了。这正是我想要的。非常感谢。我错过了。这正是我要找的。