为啥这个范围表示为 URI?

Posted

技术标签:

【中文标题】为啥这个范围表示为 URI?【英文标题】:Why is this scope expressed as a URI?为什么这个范围表示为 URI? 【发布时间】:2021-12-16 13:14:18 【问题描述】:

https://www.googleapis.com/auth/gmail.metadata

这是来自https://developers.google.com/gmail/api/auth/scopes。 Gmail API 有一个范围列表。我试图更多地了解我的宇宙。这些 URI 在 GET 上返回它们的范围 - 例如,上面的那个返回“gmail.metadata”。

为什么我需要一个 URI?

【问题讨论】:

嘿@williamohara!我不确定我是否完全理解这里的问题。你介意提供更多细节吗?此外,请记住,根据您计划使用的技术,范围可能采用不同的格式。 就是这样——为什么这个 URI 格式被采用了——而不是一个普通的字符串。除了检查它是否存在并满足或拒绝请求之外,人们期望它做什么? - 如果我看到一个 URI,我希望从中得到一些东西 - 但它除了返回“gmail.metadata”之外什么都不做,并且该信息已经在 URI 中 【参考方案1】:

范围只是表示数据区域以及您可以使用该数据做什么的标识符。它们是字符串,它们的设计方式取决于数据所有者:

为您自己的 API 设计它们时,请从有意义的短名称开始,如 this scopes article。

使用第三方 API 时,您必须接受所提供的内容。像谷歌这样的大型提供商经常使用逻辑 URL 标识符作为命名空间,以确保他们提供的许多云服务之间没有冲突。但这些并不意味着用作物理 URL。

【讨论】:

以上是关于为啥这个范围表示为 URI?的主要内容,如果未能解决你的问题,请参考以下文章

为啥C语言中float型变量的数据范围比int大

为啥C语言中有符号整型变量的取值范围是-32768~32767,麻烦详细解释一下?

数据类型unsigned char表示范围(存储值的范围)是多少,为啥(写出计算过程)

在C语言中为啥int型的取值范围是-32768~32767

java float double精度为啥会丢失

c语言 int的范围不是-32768~32767吗?为啥我输入了大于的数还是成立.