限制哪些HTTP方法在环回模式的关系
问题描述:
所以我有以下rellationship场地模型:限制哪些HTTP方法在环回模式的关系
relations": {
"events": {
"type": "hasMany",
"model": "event"
},
},
在我有关系的事件:
"relations": {
"venue": {
"type": "belongsTo",
"model": "venue",
"foreignKey": "venueId",
"options": {
"validate": true,
"forceId": false
}
}
},
在资源管理器中它告诉我,我可以得到,投入,发布,修补,更新和删除到venue/:id/events
我在哪里以及如何说:不管你是谁,这个具体的r爱情只能拥有GET权限而没有别的东西?
答
对于hasMany
回环增加了以下方法:
__findById__events
__destroyById__events
__updateById__events
__get__events
__create__events
__delete__events
__count__events
由于您只想获得访问我们保持findById
,get
和count
,并禁用休息。
假设你使用回环3,你可以在你的模型做到这一点:
Message.disableRemoteMethodByName('prototype.__destroyById__events');
Message.disableRemoteMethodByName('prototype.__updateById__events');
Message.disableRemoteMethodByName('prototype.__create__events');
Message.disableRemoteMethodByName('prototype.__delete__events');
看一看the documentation的更多信息。
如果使用的是回送2,你应该这样做,而不是(initally由Kiley Hykawy书面):
Message.disableRemoteMethodByName('__destroyById__events', false);
Message.disableRemoteMethodByName('__updateById__events', false);
Message.disableRemoteMethodByName('__create__events', false);
Message.disableRemoteMethodByName('__delete__events', false);
false
需要以表明它是一个非静态方法,比如原型回送3
对于LoopBack 2,您可以在您的模型中执行此操作: Message.disableRemoteMethodByName('__ destroyById__events',false); MessageDisableRemoteMethodByName('__ updateById__events',false); Message.disableRemoteMethodByName('__ create_events',false); MessageDisableRemoteMethodByName('__ delete__events',false); Message.disableRemoteMethodByName('__ count__events',false); false需要表明它是一个非静态方法,如LoopBack 3的原型。 –
@KileyHykawy我在你的许可下添加了答案。 –