代码之家  ›  专栏  ›  技术社区  ›  Aaron Yodaiken Stephen Chung

是否使用基于文件的URI

  •  0
  • Aaron Yodaiken Stephen Chung  · 技术社区  · 14 年前

    但我注意到一种趋势,与让Web服务器为您进行映射相反,您自己进行映射(例如,Rails及其routes配置文件,因此/index被映射到app/controllers/index.rb或您设置的w/e)。

    现在我意识到后一种方法的优点之一是,如果服务器开始执行stuff或w/e失败,没有人可以查看您的源代码;但对于编译的cgi来说,这显然不是问题。

    有什么真正的理由(抛开与REST相关的想法不谈)自己解析url吗(我觉得这比让Apache来做要慢。)

    2 回复  |  直到 14 年前
        1
  •  1
  •   Roman    14 年前

    关于自己定义路由的问题(如您给出的ruby示例)是uri不必指向实际的文件。在MVC框架中,它们只是指向操作。可以由同一控制器处理多个操作,这些控制器位于同一类和同一文件中。这里有一个 nice (ASP.NET MVC) example 路由给你什么(特别是看看搜索部分)。

    它的扩展是uri不指向文件,而是指向资源。这样的资源可以由文件、数据库表或一些可怜的家伙来支持,他们手工编写每个请求的html,并使用Morse代码轻敲0和1。

        2
  •  3
  •   sblom    14 年前

    将代码隐藏在URL后面的最大原因是它允许没有文件支持的URL响应查询。您可能希望在磁盘上为每个您可能希望提供的URL都有一个CGI,但您可能没有。你能做到的 /products.cgi?productid=12 /products/12