对于下面的资源,哪个URL模式更为RESTful?

对于下面的资源,哪个URL模式更为RESTful?,rest,restful-url,restful-architecture,Rest,Restful Url,Restful Architecture,我有一个资源客户: { "active": true, "addresses": [...], "company_name": "My Products", "customer_account": "MMM474", "customer_id": 6163, "emails": [...], "phones": [...], "website": "" } 以及相关的资源地址 哪个访问地址的url更RESTful: http://domain.tlc/api/v1/customeraddres

我有一个资源客户:

{
"active": true,
"addresses": [...],
"company_name": "My Products",
"customer_account": "MMM474",
"customer_id": 6163,
"emails": [...],
"phones": [...],
"website": "" }
以及相关的资源地址

哪个访问地址的url更RESTful:

http://domain.tlc/api/v1/customeraddresses/[id]/


[id]
是特定客户的id,
客户id

对于访问特定客户的地址,我会选择选项2。

对于访问特定客户的地址,我会选择选项2。

对于访问特定客户的地址,我会选择选项2。

对于访问特定客户的地址,我会选择选项2。

明确地说备选案文2。它将允许您进一步扩展API并使其保持一致:


http://domain.tlc/api/v1/customers/[id]/contacts/

最终选项2。它将允许您进一步扩展API并使其保持一致:


http://domain.tlc/api/v1/customers/[id]/contacts/

最终选项2。它将允许您进一步扩展API并使其保持一致:


http://domain.tlc/api/v1/customers/[id]/contacts/

最终选项2。它将允许您进一步扩展API并使其保持一致:


http://domain.tlc/api/v1/customers/[id]/contacts/

如果
[id]
在这两种情况下都是特定客户的id,并且两个URL都返回该客户的地址列表,我建议使用选项2

  • http://domain.tlc/api/v1/customeraddresses/[id]/
    看起来像一个特定的customeraddress资源
  • http://domain.tlc/api/v1/customers/[id]/addresses/
    看起来像是特定客户的所有地址列表

也就是说,它们都是相同的“RESTful”,因为它们都标识一个资源。

如果在这两种情况下
[id]
都是特定客户的id,并且两个URL都返回该客户的地址列表,我想使用选项2

  • http://domain.tlc/api/v1/customeraddresses/[id]/
    看起来像一个特定的customeraddress资源
  • http://domain.tlc/api/v1/customers/[id]/addresses/
    看起来像是特定客户的所有地址列表

也就是说,它们都是相同的“RESTful”,因为它们都标识一个资源。

如果在这两种情况下
[id]
都是特定客户的id,并且两个URL都返回该客户的地址列表,我想使用选项2

  • http://domain.tlc/api/v1/customeraddresses/[id]/
    看起来像一个特定的customeraddress资源
  • http://domain.tlc/api/v1/customers/[id]/addresses/
    看起来像是特定客户的所有地址列表

也就是说,它们都是相同的“RESTful”,因为它们都标识一个资源。

如果在这两种情况下
[id]
都是特定客户的id,并且两个URL都返回该客户的地址列表,我想使用选项2

  • http://domain.tlc/api/v1/customeraddresses/[id]/
    看起来像一个特定的customeraddress资源
  • http://domain.tlc/api/v1/customers/[id]/addresses/
    看起来像是特定客户的所有地址列表

也就是说,它们都是相同的“RESTful”,因为它们都标识一个资源。

您可以将URL视为空间到子空间的分区。 比如说,你有“客户”作为你的根空间,在下面,它包含用[id]标识的客户。然后,在每个customer=[id]下,都有“地址”

因此,这将导致您的第二个选择:

http://domain.tlc/api/v1/customers/[id]/addresses/

您可以将URL视为将空间划分为子空间的分区。 比如说,你有“客户”作为你的根空间,在下面,它包含用[id]标识的客户。然后,在每个customer=[id]下,都有“地址”

因此,这将导致您的第二个选择:

http://domain.tlc/api/v1/customers/[id]/addresses/

您可以将URL视为将空间划分为子空间的分区。 比如说,你有“客户”作为你的根空间,在下面,它包含用[id]标识的客户。然后,在每个customer=[id]下,都有“地址”

因此,这将导致您的第二个选择:

http://domain.tlc/api/v1/customers/[id]/addresses/

您可以将URL视为将空间划分为子空间的分区。 比如说,你有“客户”作为你的根空间,在下面,它包含用[id]标识的客户。然后,在每个customer=[id]下,都有“地址”

因此,这将导致您的第二个选择:

http://domain.tlc/api/v1/customers/[id]/addresses/

没有“更宁静”的挑战。应用程序是你们的,做任何更适合你们需要的事情。并没有“更宁静”的挑战。应用程序是你们的,做任何更适合你们需要的事情。并没有“更宁静”的挑战。应用程序是你们的,做任何更适合你们需要的事情。并没有“更宁静”的挑战。应用程序是您的,做任何更适合您需要的事情。事实上,两者都可以在任何给定的应用程序中用于标识相同的资源。事实上,两者都可以在任何给定的应用程序中用于标识相同的资源。事实上,两者都可以在任何给定的应用程序中用于标识相同的资源。而且,两者都可以在任何给定的应用程序中用于标识相同的资源。