我被推入了一个特殊的情况,我无法确定什么是错的,什么是正确的。RESTful - 获得不同形式的相同资源的相同资源的不同URI
我有一个名为Invoice的资源。为了让我使用下面URI
somedomain.com/inovices/{InvoiceNumber} - Invoice number is numeric
Accept: application/xml
一个JSON或XML表示当我想同样的资源的PDF我使用下面的URI:
somedomain.com/inovices/{InvoiceNumber} - Invoice number is numeric
Accept: application/pdf
上述两个网址的供应经过身份验证的请求。我们也希望使用GUID用于身份认证的请求,支持相同的资源,因此我们希望在下面的网址
somedomain.com/inovices/{GUID}
Accept: application/pdf
使用上面的网址就像是一个永久的URL和任何人都可以访问此网址任意次数。我的困惑是,如上提供的URL是否是RESTful。因为在一个网址中,我使用的是数字型发票号码和永久性网址,因此我将其替换为GUID。
我觉得这是错误的原因是同一资源用两个不同的URI(数字和GUID)表示,即使它们返回相同的资源。或者这只是我的假设,它是错误的?它反对任何REST协约是我无法理解的吗?
当然,您可以使用不同的URL传递相同的文档。为什么不应该允许?我在真实世界的应用程序中多次看到它,并且我没有看到它应该错误的任何逻辑原因。 – dirkk
@dirkk感谢您的确认,如果您还记得,您是否可以将我指向某个网址? – JPReddy
对不起,他们是内部客户项目。不能这样做。 – dirkk