2016-01-21 37 views
1

我使用Dropbox Api V2同步应用程序数据在文件夹中。为了跟踪我的Dropbox目录中的更改,我使用长轮询。这里是我的代码mDbxFile.java:Java,Dropbox API V2 - 试图发出长期请求时出错

File f = new File("my_filepath"); 
DbxRequestConfig requestConfig = new DbxRequestConfig("my_prog/1.0", Locale.getDefault().toString()); 
DbxAuthInfo authInfo = DbxAuthInfo.Reader.readFromFile(f); 
DbxClientV2 dbc = new DbxClientV2(requestConfig, authInfo.accessToken); 
DbxFiles.ListFolderGetLatestCursorResult cursorResult = dbc.files.listFolderGetLatestCursor(""); 
DbxFiles.ListFolderLongpollResult longpollResult = dbc.files.listFolderLongpoll(cursorResult.cursor); 

但是,当我执行它,我收到以下错误:

com.dropbox.core.DbxException$BadRequest: Error in call to API function "files/list_folder/longpoll": Your request includes an Authorization header, but this function does not use it. 
at com.dropbox.core.DbxRequestUtil.unexpectedStatus(DbxRequestUtil.java:262) 
at com.dropbox.core.v2.DbxRawClientV2.rpcStyle(DbxRawClientV2.java:95) 
at com.dropbox.core.v2.DbxFiles.listFolderLongpoll(DbxFiles.java:7678) 
at com.dropbox.core.v2.DbxFiles.listFolderLongpoll(DbxFiles.java:7705) 
at com.cramming_tools.draico.dbx.mDbxFile$1.run(mDbxFile.java:122) 
at java.lang.Thread.run(Thread.java:745) 

错误是由最后一行触发。

+0

阅读错误。它说你传递给它一个认证令牌,但是这个函数并不期望。尽量不要发送认证信息。 –

+0

问题是,身份验证头包含在通过其提出请求的dbc对象中。从DB api v2来源判断,头部通过Dropbox API本身传递给服务器。我只是想找到一些解决方法。 –

回答

0

这是Dropbox Java SDK中的一个已知问题,将在未来的更新中解决。

+0

那么,这是否意味着无法在DB api v2中以当前状态发出长期请求? –

+0

SDK目前无法使用,但可以直接将请求发送到HTTP端点:https://www.dropbox.com/developers/documentation/http/documentation#files-list_folder-longpoll – Greg

+0

这应该在版本2.0-beta-5。 – Greg