1

观察说明:

  • 在我拥有的几个应用程序之间,如果我在一个应用程序中创建一个存储桶,则不允许在另一个应用程序中使用。我假设我可以但没有(例如,具有相同存储桶名称的 dev/staged/prod 应用程序),我有"reason": "Bucket already exists"
  • 当我创建一个新应用程序并尝试使用一些常用名称(azerty/qwerty/demo/test/...)创建一些存储桶时,这是不可能的,因为它告诉我“原因”:“存储桶已经存在”这个让我想知道另一个应用程序是否可以获取一些我无法使用的存储桶名称。(注意:当我使用像 uuid 之类的随机名称时,我从来没有冲突)

Forge Autodesk 上的存储桶是如何隔离的?我应该如何考虑使用存储桶名称?(因为目前的观察让我认为应用程序之间的存储桶并不是那么孤立......)

谢谢,

4

1 回答 1

1

您对存储桶名称的理解是正确的。从 API 帮助中,要求是

您分配给存储桶的唯一名称。它必须在所有应用程序和区域中是全局唯一的,否则调用将失败。可能的值:-_.a-z0-9(长度在 3-128 个字符之间)。请注意,您无法更改存储桶密钥。

即它是全球唯一的。目前,我看不到在创建新存储桶之前检查它是否唯一的方法,而通常这种格式是否有效:<您的公司名称>.<您的应用程序名称>.<您在此应用程序中的存储桶名称>,虽然 Forge 没有 Java group id 注册之类的东西,如果其他客户碰巧使用这样的名称创建,这样的名称也可能会发生冲突,但可能性要低得多。

我的另一个做法是:<您的应用程序客户端 ID>。<您在此应用程序中的存储桶名称>。由于客户端 ID 是唯一的,这将确保最终的存储桶名称是唯一的。查找此存储桶属于哪个应用程序也会有所帮助。

通用 guid 很好,而您必须管理存储桶用途的地图。

于 2018-05-19T01:53:48.863 回答