你会如何设计一个可破解的网址

2024-01-17

想象一下,您有一组以良好的树形层次结构组织的产品类别,并且您希望提供可修改的 URL 来浏览这些产品类别。你可以做这样的事情

/catalog/categorya/categoryb/categoryc

然后,您可以很容易地找出应该列出产品的类别(请注意,需要完整的 URL,因为您可以拥有名称相同但位于层次结构中不同位置的类别)

现在在其中添加产品信息的好方法是什么?举个例子,您想要显示此类别的产品 Oblivion

/catalog/games/consoles/playstation/adventure

很容易将产品添加到网址末尾

/catalog/games/consoles/playstation/adventure/oblivion

但一旦你这样做了,你就失去了知道它的类别或产品是否被称为遗忘的能力。我个人觉得不要强行加.html之类的后缀

/catalog/games/consoles/playstation/adventure/oblivion.html

将是最好的解决方案并使用某种前缀,例如

/catalog/games/consoles/playstation/adventure/product:oblivion

您还可以添加某种触发器,例如

/catalog/games/consoles/playstation/adventure/PRODUCT/oblivion

也不那么好,你会(尽管它不太可能成为问题)限制自己拥有一个名为product

到目前为止,后缀解决方案看起来是我从头到尾想到的最用户友好的方法,但我不喜欢必须使用扩展

您对此有何看法?


深邃的道路让我烦恼。它们很难分享。



/product/1234/oblivion --> direct page
/product/oblivion --> /product/1234/oblivion if oblivion is a unique product, 
                  --> ~ Diambiguation page if oblivion is not a unqiue product. 

/product/1234/notoblivion -> /product/1234/oblivion

/categories/79/adventure -->  playstation adventure games
/categories/75/games -->  console games page
/categories/76/games -->  playstation games page 
/categories/games --> Disambiguation Page. 
  

否则,网址很长,而seeming可破解,要求您正确获取所有节点元素才能破解它。

以 php.net 为例



php.net/str_replace -->  goes to 
  http://nz2.php.net/manual/en/function.str-replace.php
  

而且这种模式非常容易被破解,人们一直盲目地使用它。

注意:W3C 认为 .html 后缀在功能上没有意义并且是多余的,应在 URL 中避免使用。

http://www.w3.org/Provider/Style/URI http://www.w3.org/Provider/Style/URI

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

你会如何设计一个可破解的网址 的相关文章

  • 在 PHP 中从 URL 斜杠后获取两个单词

    我需要从 URL 中获取两个单词 例如我有以下 URL http mydomain com alrajhi invoice 108678645541 http mydomain com alrajhi invoice 10867864554
  • 使用 Python 3.x 基本获取 URL 的 HTML 正文

    我是Python新手 我对 Python 2 x 中的旧 urllib 和 urllib2 与 Python 3 中的新 urllib 之间的差异有点困惑 除此之外 我不确定数据在发送到 urlopen 之前何时需要编码 我一直在尝试使用
  • 为什么有些网站会在 URL 末尾添加“Slugs”? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 许多网站 包括这个网站 都添加了明显称为slugs 描述性的 但据我所知 无用的文本片段 到 URL 的末尾 例如 该网站针对此问题给出的 URL 是
  • 分页当前链接未突出显示

    我遇到了一个奇怪的问题 我当前的分页链接未突出显示 我制作的分页网址如下所示 site com list 50 some value 一切工作正常 但当前视图中的分页链接未突出显示 我检查了CSS 没问题 我猜问题出在库上 这是我的代码 我
  • url文本压缩(不是缩短)并存储在mysql中

    我在 mysql 中有一个 url 表 其中只有两个字段 id 和 varchar 255 用于 url 目前那里有超过 5000 万个 url 我的老板刚刚向我提供了有关当前项目扩展的线索 这将导致在该 url 表中添加更多的 url 预
  • 如何对URL进行分类? URL 的特点是什么?如何从 URL 中选择和提取特征

    我刚刚开始研究分类问题 这是一个两类问题 我的训练模型 机器学习 必须决定 预测是允许 URL 还是阻止它 我的问题非常具体 如何对 URL 进行分类 我应该使用普通的文本分析方法吗 URL 的特点是什么 如何从URL中选择和提取特征 我假
  • Flutter Web URL 路由不适用于真实域

    我正在尝试使用一个网址来获取参数并将该参数分配给网络文件内的变量 例如 我的域名是 example com 在这个网站中我需要用户的 ID 我想制作 example com id 123 并获取 123 id 并给出变量 123 值 在 f
  • Yii 框架:控制器/操作 url 和参数

    在我的申请中 我有ApiController with actionUsers 所以在 YII 中路径变成api users 现在为了获取某些用户信息 我使用以下路径api users id 10其中 10 是用户 ID id路径的一部分基
  • ASP.NET 的友好 URL

    Python 框架总是提供处理 URL 的方法 以优雅的方式传达请求的数据 例如http somewhere overtherainbow com userid 123424 http somewhere overtherainbow co
  • 如何将 URL 参数转换为 JavaScript 对象? [复制]

    这个问题在这里已经有答案了 我有一个像这样的字符串 abc foo def 5Basf 5D xyz 5 我怎样才能将它转换成这样的 JavaScript 对象呢 abc foo def asf xyz 5 到了 2021 年 请认为这个已
  • 如何在 J2EE 中进行动态 URL 重写

    回到我的 ASP NET 时代 我使用URL重写器 NET http urlrewriter net 进行动态 URL 重写 基本上 它是一个 HTTPModule 可以拦截页面请求并根据您定义的规则重写 URL 与 MOD REWRITE
  • 是否允许在 URL 中使用非英语 (ASCII) 字符以进行 SEO?

    我有很多 UTF 8 内容 我想将它们插入到 URL 中以用于 SEO 目的 例如 我想要包含在 URI 中的帖子标签 site com tags id TAG NAME 但是 标准仅允许 ASCII 字符 URI 中允许的字符 但没有保留
  • Rails 3:使用 AJAX 请求更新 URL 参数

    我有一个过滤器和一个产品列表 id 名称 创建日期 我可以按 ID 名称或创建日期进行过滤 通过 AJAX 请求 我更新了内容 div 但显然 URL 没有改变 如何将参数附加到 URL 例如 localhost 3000 dashboar
  • MailChimp 取消订阅 URL 中每个参数的用途是什么?

    在以下 URL 中 从列表中取消订阅用户 http xxxxx us2 list manage com unsubscribe u 87f537bccxx35e53a1890e0d9 id 40dcxx6cd6 e c4aaxx1dd6 c
  • 如何在configure.in中测试C++库的可用性?

    我正在 GNU Linux 上开发一个 C 项目 并且正在寻找一种方法来使用 Autotools 测试 IBM Informix 库的存在性和可用性 即编辑configure in 我没有使用 Autotools 的经验 所以基本上我是从该
  • 是否可以在带有 标记的链接上使用空 href

    我将基本标签设置为这样 然后我想创建一个链接http mnapoli github com PHP DI http mnapoli github com PHP DI 在相对路径中 I tried a href link a 它在 Chro
  • 带有查询参数的渲染 url

    无法找到简单问题的解决方案 答案应该是显而易见的 如何在 hamlet 模板中使用查询参数渲染 url I e ItemsR 将生成http localhost 3000 items我如何生成类似的东西http localhost 3000
  • 如何在 django 模板中将名称反转为绝对 url?

    url url name 给出一个相对名称 我怎样才能做类似的事情 absolute url url name 这样它就会返回带基数的 url 包括端口 如果存在 有不同的解决方案 编写您自己的模板标签并使用 HttpRequest bui
  • AVAudioPlayer 无法从网站播放 m4a 或 mp3 文件类型

    我试图在我的应用程序中找到一个仅纯 m4a 声音的 URL 我有音频的 URL 理论上可以下载它 然后 使用下载的文件URL到声音 我尝试使用AVAudioPlayer播放它 但它不播放任何声音 这是我的代码 在 URL 检索函数中 我调用
  • 如何在 Python 中从 HTML 页面中提取 URL [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我必须用Python 编写一个网络爬

随机推荐

  • 重建 Android Instant App 后,使用功能模块中基本模块中定义的颜色失败

    我有一个base模块和一个名为的功能模块query我的即时应用程序项目中的模块 My QueryActivity inside query模块使用的颜色是base module 查询活动 kt https github com mustaf
  • 分发定制 iPhone 应用程序的正确方法是什么?

    我开发了一些应用程序商店应用程序 但最近中小型公司问我是否有兴趣开发定制应用程序 我发现与 Apple 的许可和合同有点令人困惑 至少可以说 开发人员可以制作 3 种类型的构建 应用商店 Ad Hoc 企业 不需要应用程序商店 因为这些是私
  • 在 R-markdown 中显示 tibble 的所有行和列

    我正在处理 R markdown 文件 分析结果以以下形式显示tibble但为了查看所有列和行 我需要单击展开 但是 由于我要将文件编织成 html 因此我需要显示 R markdown 文件中的所有列和行 我进行了搜索并提出了以下代码 o
  • 如果 hash['a'] 不存在,如何分配 hash['a']['b']= 'c' ?

    有没有比更简单的方法 if hash key a hash a b c else hash a hash a b c end 最简单的方法是构建你的哈希 http ruby doc org core Hash html method c n
  • css-transform 动画导致闪烁

    我的代码在这里http jsfiddle net JaB5S http jsfiddle net JaB5S 您可以单击蓝色页面来运行动画 但无论何时 您都可以看到文本闪烁 直到动画完成 右侧的文字甚至消失了 我在某处读到过backface
  • 如何知道 Spring.NET 根上下文何时加载?

    我正在运行一个 Web 服务 它使用 Spring NET 来实现 IoCness 其中一个类需要在加载时执行一些操作 我正在使用AfterPropertiesSet 和 一些东西 涉及调用ContextRegistry GetContex
  • 不包含名为的导出

    我正在尝试将一个简单的组件导入到我的 React 中 我无法找到该组件 导入组件时出现以下错误 src App js 61 28 32 componentes Menu 不包含导出 名为 菜单 这是我的简单组件 import React C
  • React Native:放置全局状态变量的位置

    我正在开发我的第一个 React Native 我再次需要一些帮助 我的应用程序有一种状态 运动 这对于组件 屏幕等非常重要 根据所选的运动 我也会加载不同的样式 图像和 api 信息 将有一个模式 用户可以从中更改运动 模式现在是 Hea
  • Java:从字符串创建日期对象并插入MySQL

    每当我必须在 Java 中处理日期 时间时 这都会让我感到难过 我正在尝试解析一个字符串并将其转换为日期对象以插入到准备好的语句中 我一直在努力让它发挥作用 但运气不佳 当我去编译该类时 我还会收到有用的错误消息 线程 main java
  • 使用 json 响应时出现 406 错误

    我正在尝试通过 batman rails gem 使 Rails 应用程序与 node js 框架 batman js 一起运行 当我在 Rails 控制器中使用 json 进行响应时 每次都会收到 406 错误 但我不知道为什么 这是我的
  • Java列表中如何通过对象的属性获取对象的索引

    我想通过 Java 中的属性获取列表中对象的索引 例子 List
  • Grails,如何获取请求对象

    Grails 有一个定义的 request 对象here http grails org doc 2 2 1 ref Servlet 20API request html 问题是当我尝试使用它时 我得到 No such property r
  • 在RobotFramework中访问列表内的Dictionary元素显示错误列表对象没有属性

    这是程序代码 我有一个json文件code json 其结构如下 键 值 键 值 当我将列表元素转换为字典时 它会抛出错误 Settings Library JSONLibrary Library OperatingSystem Libra
  • 在 matplotlib 中绘制 Python networkx 图表时出现混乱

    我正在测试如何在 networkx 上创建网络图 我的问题是 当我尝试使用 matplotlib 绘制这些图表时 节点 边缘和标签显得混乱 我希望将标签附加到右侧节点 并且希望边缘看起来像连接节点 code import networkx
  • 检查字符串是否包含子字符串

    如何使用 Perl 检查给定字符串是否包含某个子字符串 更具体地说 我想看看是否s1 domain example存在于给定的字符串变量中 要查明字符串是否包含子字符串 您可以使用index http perldoc perl org fu
  • Haskell 中具有多个构造函数的记录类型

    很多时候 当我使用 Haskell 编写某些内容时 我需要具有多个构造函数的记录 例如 我想开发某种逻辑方案建模 我想到了这样的类型 data Block a Binary binOp a gt a gt a opName String i
  • Hibernate 抓取条件被忽略

    我有一些与 LoginSession 类具有一对多关系的 User 类 我的 User 类中有一个 LoginSession 集合 Entity name T User public class User OneToMany fetch F
  • javascript中判断对象是否有属性和值

    我想检查一个对象是否具有某物的属性并且其值是否等于某个值 var test name joey age 15 name hell age 12 就是这样 一个对象数组 现在我想在对象内部进行搜索 如果该对象包含我想要的内容 则返回 true
  • 非阻塞 multiprocessing.connection.Listener?

    我使用 multiprocessing connection Listener 进行进程之间的通信 它对我来说很有魅力 现在我真的很喜欢我的主循环在客户端命令之间做其他事情 不幸的是 listener accept 会阻止执行 直到建立来自
  • 你会如何设计一个可破解的网址

    想象一下 您有一组以良好的树形层次结构组织的产品类别 并且您希望提供可修改的 URL 来浏览这些产品类别 你可以做这样的事情 catalog categorya categoryb categoryc 然后 您可以很容易地找出应该列出产品的