[英]Dropbox cannot go to previous page after user accepts authentication
我正在嘗試編寫一個在我的計算機中本地運行的html應用程序,並使用其數據存儲區api將數據存儲在保管箱中。 該應用程序將首先使用保管箱對用戶進行身份驗證,以登錄用戶的帳戶,以便可以存儲數據。 (與此相關的教程是https://www.dropbox.com/developers/datastore/tutorial/js )
但是,在我單擊保管箱頁面中的“允許”按鈕接受身份驗證之后,我無法返回html並在chrome js控制台中收到此錯誤:
不允許加載本地資源:file:/// I:/my%20app/my%20app.html# access_token = uKAmBGggAAA…bTSwy&token_type = bearer&uid = 192028&state = oas_hjmjzi5m_0.8ejep9nuh99hpviauthorize?client_id = wy9s1uvip6q / uri / refile ....................
在我的應用中執行身份驗證的js代碼為:
function save(){
var client = new Dropbox.Client({key: '9s1uswrxxxxxx'});
client.authenticate({interactive: false},
function (error) {
if (error) {
alert('Authentication error: ' + error);
}
});
if (client.isAuthenticated()) {
alert('the client is authenticated.');
}
client.authenticate();
var datastoreManager = client.getDatastoreManager();
datastoreManager.openDefaultDatastore(function (error, datastore) {
if (error) {
alert('Error opening default datastore: ' + error);
}
根據dropbox數據存儲區api教程的說法:“鏈接過程會將用戶重定向到Dropbox網站,並要求他們授予您的應用訪問其Dropbox的權限。當用戶批准(或拒絕)時,他們將被自動定向回同一用戶頁”。
因此,我想知道為什么當從保管箱身份驗證頁面返回到我的HTML時會發生此錯誤。
您的redirect_uri指向本地file:// URL,瀏覽器不會將您重定向到該URL。 瀏覽此處獲取更多信息:
https://forums.dropbox.com/topic.php?id=103530#post-558937
簡而言之,您應該在服務器之外提供應用程序服務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.