我对Telegram Bot API有点陌生,在机器人中,我想通过Telegram Passport来验证用户的年龄
我正在尝试重新创建他们的Javascript SDK。该按钮出现并打开Telegram Passport,但我收到错误消息
Could not get authorization form. PUBLIC_KEY_REQUIRED
我已经插入了我的公钥,但仍然继续收到错误消息。如果有人可以复制他们的示例并告诉我我做错了,那将是很大的帮助。
答案 0 :(得分:0)
必须在2个地方提供公共密钥。
传递给Telegram.Passport.createAuthButton的 AuthParameters 对象的public_key 属性应设置为您的公共密钥。我假设您是在声明插入公钥时这样做的。
您还必须使用BotFather为您的机器人设置公钥。您使用BotFather启动该过程的命令是 / setpublickey 。当您输入该命令时,BotFather会询问您该密钥应应用于哪个机器人,然后它会等待您将公钥粘贴到消息中。如果一切顺利,则BotFather会回复“成功!公钥已更新。/help”。
当我将公钥放入AuthParameters,但未能将其上传到BotFather时,我看到了与您描述的错误消息相同的消息。