我有一个暴露枚举的 RESTful 服务。
我应该将它们公开为本地化字符串还是普通整数?
我倾向于使用整数以便在服务端轻松转换,但在这种情况下,客户端需要从某处获取本地化字符串列表,以便了解枚举的含义。我是否只是徒劳地创建了额外的步骤?
我几乎找不到关于 RESTful API 中哪些通常完成的信息。
编辑:
好的。假设我正在编写一个存储有关人们宠物信息的网站。我可以有一个 AnimalType 枚举
0 Dog
1 Cat
2 Rabbit
etc.
当人们获取特定的宠物资源时,说
/pets/1
,我可以为动物类型提供有意义的本地化字符串,或者只提供 ID 并强制它们通过 /pets/types
再次查找。资源。还是我应该同时提供?
最佳答案
我想您应该考虑要向客户公开的一致 RESTful API。
您自己是否在代码中使用枚举是一个实现细节。
您的客户是否会在他的实现中使用枚举,您既不知道也不应该打扰您,因为这只是不同级别的抽象。
先设计API,后实现。
如果您更深入地了解要使用这些枚举返回给客户的信息类型,我可以给出更直接的答案。
现在我猜如果整数 id 和字符串描述与描述信息或状态相关,你想在调用你的 RESTful 资源时返回它们,那么你应该返回它们,它们都包装在 json 或 xml 文档中。
关于web-services - RESTful 枚举。字符串还是ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13878523/