我目前正在开发一个Firefox OS应用程序,它应该能够将文件保存到我的Dropbox帐户中,但我在oauth2身份验证过程中遇到了一些问题。我的应用程序必须是“特权”,这意味着所有文档都不托管在Web服务器上,因此我需要使用“Dropbox.AuthDriver.Popup”驱动程序进行身份验证过程。
我的问题:
一切正常,直到Dropbox将我重定向到我的网络服务器上托管的“oauth_receiver.html”。看来“Dropbox.AuthDriver.Popup.oauthReceiver();”方法无法将authtoken发送到我的应用程序。
因此可以使用内置的auth驱动程序执行dropbox.js oauth2身份验证吗?或者我需要手工完成吗?
答案 0 :(得分:1)
我可以使用以下命令从Firefox OS App登录Dropbox: https://github.com/smarx/othw/tree/master/JavaScript
我做了一些改动。例如,获取重定向网址。我把它改成了dropbox home:
function get_redirect_uri() {
return "https://www.dropbox.com/home";
}
然后我使用重定向清单(我的应用程序的manifest.webapp)设置如下:
"redirects": [
{"from": "https://www.dropbox.com/home",
"to": "/redirects/auth.html"}
]
https://developer.mozilla.org/en-US/Apps/Build/Manifest#redirects
应用程序必须是特权btw。可能不是最好的方式,但它似乎工作。 我还将js从内联移动到外部js文件,我在单击按钮时执行该文件。重定向后,auth.html文件应该有权访问令牌。