问题标签 [restful-url]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
96862 浏览

rest - 如何创建没有动词的 REST URL?

我正在努力确定如何设计宁静的 URL。我完全赞成使用带有名词而不是动词的 URL 的宁静方法,我不明白如何做到这一点。

我们正在创建一项服务来实现财务计算器。计算器采用一堆参数,我们将通过 CSV 文件上传这些参数。用例将涉及:

  1. 上传新参数
  2. 获取最新参数
  3. 获取给定营业日期的参数
  4. 激活一组参数
  5. 验证一组参数

我收集安静的方法是使用以下类型的 URL:

您可以通过以下方式实现前三个用例:

  1. POST 您在发布请求中包含参数文件的位置
  2. 第一个 URL 的 GET
  3. 第二个 URL 的 GET

但是你如何在没有动词的情况下完成第 4 和第 5 用例呢?你不需要像这样的网址:

??

0 投票
4 回答
62584 浏览

rest - 在查询字符串或请求正文中包含数据的 Restful URL?

在查询字符串与请求正文中的 REST URL 中传递数据的经验法则是什么?

即:您正在创建一项服务来添加曲棍球运动员。你可以去:

或者

如果您要传递大量数据,则需要使用选项 #1,因为 URL 长度有限制。但除此之外,为什么不直接使用查询字符串来传递数据呢?


更新:删除了您可以在浏览器中测试选项 #2 的评论。意识到(duh)您只能在浏览器中执行 GET-s。

0 投票
3 回答
1626 浏览

rest - 如何使用不同的查找器“方法”获取 REST 资源?

假设您有一个 /companies 资源,允许客户查找上市公司,并且您希望客户能够按代码、位置、位置和行业查找公司

您是否会在表单中保留相同的 URL:

  • 获取/公司/msft
  • 获取/公司/美国
  • 获取/公司/美国&软件

这似乎不对。有任何想法吗?

0 投票
3 回答
3712 浏览

rest - 如何以 RESTful 方式“延迟加载”?

鉴于此服务可获取有关酒店的信息:

问题是biggie300K,我们不想在每次响应时都返回它。什么是延迟加载这个值的 RESTful 方式?

我们是否应该设置两个资源:

和..

你只GET /hotel/{id}/biggie在你真正需要这些数据时才请求?

biggie这会起作用..虽然除了它是一个大数据集之外没有什么特别的。我认为将所有内容都保持在一个hotel级别会更好,因为所有属性实际上只是hotel.

0 投票
7 回答
9830 浏览

rest - RESTful POSTS,您将对象发布到单数还是复数 Uri?

这些 URI 中的哪一个更“适合”接收 POST(添加产品)?是否有任何最佳实践可用,或者只是个人喜好?

/product/(单数)

或者

/products/(复数)

目前我们/products/?query=blah用于搜索和/product/{productId}/获取单个产品的 PUT 和 DELETE。

0 投票
2 回答
152 浏览

rest - 三步在线购买 RESTful 方式

我们正在重新开发我们的在线购买功能,并以 RESTful 方式进行。

该过程分为三步,每一步都要求客户输入数据。

假设三个 URL 是;

/step1.aspx

/step2.aspx

/step3.aspx

每个步骤都是非常自主的,不需要来自任何其他步骤的数据。

问题是我如何阻止客户直接导航到第 2 步而无需先完成第 1 步中的详细信息,因为每个步骤对上一步一无所知?

我知道我可以向我的对象模型添加一个属性,告诉我哪一步是最后一步等,但这不会破坏整个 REST 原则吗?

我也不想检查我的模型是否已提交上一步中的详细信息,因为这再次违反了 REST 原则。

我想我正在慢慢让自己接受一个我需要(某事)告诉我我去过哪里但我不想要的概念。

控制器应该/可以检测到历史不包含上一步将控制放回我认为应该在的位置吗?

0 投票
2 回答
1872 浏览

ruby-on-rails - Rails URL 的嵌套路由和参数(最佳实践)

我对 RESTful url 以及不嵌套 url 背后的所有理论有一个不错的理解,但我仍然不太确定这在企业应用程序中的外观,比如亚马逊、StackOverflow 或谷歌......

谷歌有这样的网址:

亚马逊是这样的:

StackOverflow 是这样的:

所以我的问题是,为这样的系统创建 url 的最佳实践是什么?你什么时候开始在 url 中存储参数,什么时候不呢?这些大公司似乎没有遵守 ruby​​ 社区中如此激烈争论的规则(例如,你几乎不应该嵌套 URL),所以我想知道你如何在更大规模的项目中实现自己的 url,因为它似乎不嵌套 url 的想法在任何比博客更大的东西上都失效了。

有小费吗?

0 投票
3 回答
207 浏览

rest - REST 中的 category/category_id/item_id 和 category?category_id={}&item_id={} 有什么区别?

我刚开始研究 REST,想知道这两种表示之间的基本区别是什么。第一个对我来说看起来很不错,第二个必须传递一些属性值,但底层逻辑似乎沸腾到几乎相同的东西(虽然我可能弄错了)

0 投票
1 回答
5872 浏览

rest - 具有任意数量过滤条件的搜索服务的 RESTful URL

我想构建一个 RESTful Web 服务,为生物数据数据库实现搜索界面。

一个典型的搜索请求可能涉及十几个数据属性。例如,按学名搜索,将搜索限制在小于 100m 的水深。我的第一直觉是在查询字符串中包含所有属性,例如 ?searchType=sciname&sciname=mola+mola&maxdepth=100&mindepth=0

但是,查询字符串被认为是非 RESTful 的,请参阅http://rest.blueoxen.net/cgi-bin/wiki.pl?QueryStringsConsideredHarmful

我已经查看了一些早期的 SO 讨论,例如用于搜索的 RESTful URL 设计, 但我仍然不清楚这一点,所以我的问题是:

对于可能有任意数量的过滤值的搜索服务,是否有公认的 RESTful URL 标准或模式?

0 投票
3 回答
611 浏览

asp.net-mvc-routing - MVC:带有嵌套 url 的 RESTful 路由,当实体没有真正嵌套时

我真的很难使用 RESTful 范例 + 嵌套 url。我问了一个问题,让我知道了我现在所处的位置。我的领域大致是这样的:有学校,有学校的课程,有学校的老师。现在,学校、课程和教师不是“嵌套”实体,因为您可以使用一个 ID 来引用它们中的任何一个。该网站是每个学校的“微型网站”的集合,展示了每个学校的课程和教师。课程或教师只能存在于一所学校。

假设我们有一个类似 /schools/1/courses/10 的网址。学校 1 的课程 10。这很好用。假设用户用手将 10 更改为 11,这恰好存在,但是是学校 2 的课程。现在这会导致一团糟,我的网站仍然“认为”用户在学校 1,但将课程 3 显示为它。

我是否应该将详细操作参数化为所要求的 ID 和它所涉及的“父母”实体(在本例中为学校)?不仅通过 id 还通过学校限制从存储库中获取?

或者有没有更好的方法来做到这一点?