当前位置: 首页 > 知识库问答 >
问题:

Laravel 5路由url筛选

濮阳功
2023-03-14

你好,我正在使用Laravel5进行我的项目。

我有这样的路线:

news/some-news-title/galery?page=2#photo/

它对我的分页画廊非常有用。但我看到,当我向url添加额外的参数end of时,它仍然有效。

例子:

news/some-news-title/galery?page=2/amp
news/some-news-title/galery?page=2/asdasd

通常它不应该工作。但它显示了相同的画廊页面。

我尝试了一些代码,但对我无效:

Route::any('news/{any}/{any?}/amp', function(){
   return 'error';
});

Route::any('news/{any}/{any}/{any}', function(){
   return 'error';
});

当尝试这些代码时,仍会打开同一页。

如何阻止或重定向此参数到404页?

谢谢

共有1个答案

淳于玺
2023-03-14

它对我的分页画廊非常有用。但我看到,当我向url添加额外的参数end of时,它仍然有效。

看来这是正确的行为。

让我们看看你的网址

可能是这样的http://example.com/news/some-news-title/galery?page=2#photo/anythingelse

我在http://www.freeformatter.com查过了,上面写着:

现在你关心的最后一部分网址(哈希)。

根据维基百科:

散列标记#引入的片段标识符是文档URL的可选最后一部分。它通常用于标识该文档的一部分。

简单地说,您不能过滤散列部分,因为它属于当前文档,并且被视为URL的单个和最后一部分。

 类似资料:
  • 例如,URL'/client/12312'将路由到clientServlet,其方法将接收12312作为参数。

  • 一个干净优雅的URL方案是高质量Web应用程序中的一个重要细节。 Django可以让你自己设计URL,无论你想要什么,没有框架限制。 要为应用程序设计URL,您可以非正式地创建一个名为**URLconf**(URL配置)的Python模块。 这个模块是纯Python代码,是一个简单的Python模式(简单的正则表达式)到Python函数(您的视图)之间的映射。 (1). Django是如何处理一个

  • 仅支持 pathInfo 模式的 URL,且与控制器名称(方法)保持一致,控制器搜索规则为优先完整匹配模式。 路由规则 内置路由支持无限层级的路由,即Controller可以无限嵌套目录,如: http://127.0.0.1:9501/api/auth/login 执行的方法为:AppControllerApiAuth::login() http://127.0.0.1:9501/a/b/c/d

  • 问题内容: 因此,我正在编写一个框架,我希望以此为基础来开发一些我正在使用的应用程序(该框架在那里,所以我有一个可以使用的环境,并且该系统可以让我使用例如一个登录) 我要创建这个框架,并且它的应用程序都使用面向资源的体系结构。 现在,我想创建一个URL路由类,该类可以由APP编写器(也可能由CMS App用户)扩展,但我想通过查看以下方法找出最佳方法:其他应用程序如何做到这一点。 问题答案: 我更

  • 我们将结束数据结构和算法的部分,并将数据结构用于实际问题。我已经写了几个 Web 服务器,一个不断出现的问题是,将 URL 路径匹配到“动作”。你会在每个 Web 框架,Web 服务器,和必须基于层次化的键来“路由”信息的任何东西中发现此问题。当你的 Web 服务器收到URL /do/this/stuff/时,必须确定每个部分是否可能附加了某种操作或配置。如果你在/do/配置了 Web 应用程序,

  • 一、URL路由网址说明 引导文件为:index.php,若web服务器软件为Apache时,.htaccess文件也算作引导文件。DoitPHP框架由引导文件来处理客户提交的网址。如: http://www.example.com/index.php/post/show。DoitPHP框架支持两种模式的网址访问,一种为路由模式,默认为路由模式;另一种为标准模式(普通传统模式),标准模式的网址对we