gpt4 book ai didi

android - Facebook、Dropbox 或 Twitter 等开发者网站如何生成 App ID?

转载 作者:行者123 更新时间:2023-11-29 12:52:08 24 4
gpt4 key购买 nike

我正在开发一个开发者平台,当开发者注册他们的应用程序以使用我们的平台时,需要从 FB、Dropbox 等网站生成应用程序 ID,常见的步骤是开发者指定应用程序显示名称,一些权限为新的应用配置,然后它会生成唯一的应用ID和应用 secret 。

我的问题是他们是如何实现的,比如算法、机制、最佳实践等?任何帮助和细节将不胜感激!

最佳答案

应用 ID 通常是大数字或随机生成的字母数字字符序列。例如,Twitter 使用 22 个字母数字字符的序列。 App ID 不是 secret ,因为您通常需要将它们放在客户端代码中才能进行 API 调用。您可以使用您选择的语言生成一个。例如,请参阅 Python 中的这个单行代码:

import random, string
app_id = ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(20)) # 20 being the size of the App ID you're wanting

另一方面, key 是唯一标识符或无法猜测的非常长的字符串。它们不是公开的,永远不应该,永远,对公众可用(例如在 JavaScript 代码中)。这并不意味着您应该使用复杂的算法来生成它们。 UUID(或 GUID,取决于你喜欢如何调用它)在这里是完全可以接受的,但为了增加安全性,你可能希望将它们安全地存储在你的数据库中(例如加密),以防它被坏人转储。同样,在 Python 中,这一切都归结为这两行:

import uuid
secret_key = uuid.uuid1()

key 用于您的服务器和您的开发人员代码之间的私有(private)对话,因此您应该使用它们作为您的开发人员知道他的 key 及其 App ID 的证据。例如,Twitter 要求所有 API 请求都使用开发人员的 key 和临时质询的组合进行签名。开发人员代码中计算出的 HMAC-SHA1 签名作为他知道自己的 key 和 Twitter API 发送的先前 secret 挑战的证明。

所以复杂的部分不是生成 App ID 或 key :它是编写安全代码以确保您与正确的开发人员交谈:)要获得一些灵感,请查看(您似乎已经开始这样做)知名 API,例如 Facebook、Twitter、LinkedIn 或 Google+,了解“大人物”如何处理此类问题。

关于android - Facebook、Dropbox 或 Twitter 等开发者网站如何生成 App ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22194980/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com