我正在尝试使用带有Chrome扩展程序的新Dropbox数据存储区API。如果按照tutoria中的指定使用,则auth将失败,错误400:
Invalid redirect_uri: "chrome-extension://anzbpdekhbhcbekwmfazaophjcaabshl/chrome_oauth_receiver.html". It must exactly match one of the redirect URIs you've pre-configured for your app (including the path)
如果我在Dropbox网站上将此网址添加到我的应用资料中,一切正常。但是“anzbpdekhbhcbekwmfazaophjcaabshl”是计算机唯一值,每个用户的每个扩展安装都会有所不同。是否有可能以某种方式修复此问题,或者Dropbox数据存储区API是否适用于已知重定向网址的静态网站?
更新1
扩展ID对于手动/非公共扩展安装是随机的。
更新2
我找到了一种方法来使扩展ID持久化:只需打包它,从私有.pem密钥生成公钥,并将此密钥的base-64编码值设置为清单中的“密钥”。
答案 0 :(得分:4)
将我的评论移至答案(有关详细信息,请参阅问题的更新):
我认为扩展程序ID(chrome-extension://后面的部分)不是用户或计算机专用的,并且在Chrome扩展程序的安装位置保持不变。
答案 1 :(得分:1)
我已成功使用Firefox扩展程序中的数据存储区API。诀窍是将Dropbox脚本附加到实际网页,而不是本地页面。我的服务器上有一个空白页面,扩展程序打开该页面并附加必要的脚本。从那里,它将用户重定向到Dropbox身份验证页面。
用户通过身份验证后,使用page-worker API在“无头”选项卡中打开同一页面。 (我不知道Chrome扩展程序是否具有相同的功能)
重定向网址必须为https,因此您需要获取SSL证书才能生效。