我对Action HeroJS全新,我想知道如何限制用户从浏览器访问我的动作herojs rest API,url? 我甚至把路由作为POST,但仍然可以通过get方法访问?
就像在java中我们指定一个rest api作为帖子一样,get或浏览器url无法访问它? 我怎么能做到这一点?
编辑: 联系了Action Hero,在github上,他们非常有帮助,解决方案是: 在web.js中,put simpleRouting:false,它应该解决问题。 在您可以从URL访问帖子路由操作之前,但在执行此操作之后您无法进行! 使用get访问POST将返回404。
谢谢@Evan
答案 0 :(得分:1)
无论您的语言/框架是什么,所有路线都可以被任何人击中,除非您在负载均衡器或类似级别阻止它们。
不应该将问题视为“如何阻止”访问,而应该考虑“如何确保此用户使用此路由进行身份验证”之类的问题。使用像饼干或代币这样的东西是可行的方法。
您可以使用actionhero的中间件将访问规则应用于特定操作,并在不允许的情况下将错误返回使用。
这是一个执行这些类型的示例项目:
logged-in-session
中间件的另一个操作(路由/网址):https://github.com/evantahler/actionhero-angular-bootstrap-cors-csrf/blob/master/actions/showDocumentation.js