为什么论坛使用这种 url 格式?

编程


为什么论坛使用url格式:
www.domain.com/post/1234/最新帖子

而不是这样的:

www.domain.com/post?&号码?&主题

我正在开发一个论坛网站,并会使用格式 2。

我想知道使用格式1的原因及其背后的原理。看来url所表示的是文件夹的地址,而不是脚本或网页的地址。

我没有看到以 .php 或 .asp 或 .jsp 结尾的 url,所以如何处理请求,因为它不是脚本的地址。

编程是如何完成的?

解决方案1

纯粹从务实的角度来看。 使用哪种方法并不重要。

这两种方法要解决的问题是能够定位页面并传入参数。

可以说,使用 www.domain.com/post/1234/Latest 是一个更具可读性的 URL。

如果您研究一下 MVC 等 Web 框架,您就会明白这些 URL 为何/如何以这种方式构建。

他们实现了一个称为路由的概念。 下面是一个例子:

C#
public static void RegisterRoutes(RouteCollection routes)
{
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

    routes.MapRoute(
        "Default",                                              // Route name
        "{controller}/{action}/{id}",                           // URL with parameters
        new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
    );

}

此示例显示了如何构建 URL。 第一部分是控制器,第二部分是要应用的操作,第三部分是 id。

因此对于以下 URL:

https://www.mydomain.com/customer/get/1234

您可以看到您正在访问客户控制器并且正在对记录 1234 执行获取操作。

コメント

タイトルとURLをコピーしました