我正在为我的应用使用Dropbox JAVA SDK版本1.8.1。最近,使用下载API下载文件时遇到以下错误: X-Dropbox-Metadata标头中的错误JSON:1.96:\" photo_info \":期待对象的结束(\"} \")" 即可。 我还没有要求任何媒体信息,我也没有将 includeMediaInfo 设置为 true 。 以下是代码段:
DbxClient.Downloader downloader = client.startGetFile(folderPath+"/"+filename,"");
InputStream in = downloader.body;
OutputStream outs = response.getOutputStream();
byte buf[] = new byte[10000000];
int len;
while ((len = in.read(buf, 0, 10000000)) != -1) {
outs.write(buf, 0, len);
}
outs.close();
outs.flush();
in.close();
downloader.close();
这是堆栈跟踪:
threw exception [com.dropbox.core.DbxException$BadResponse: Bad JSON in X-Dropbox-Metadata header: 1.96: ""photo_info"": expecting the end of an object (""}"")] with root cause" "com.dropbox.core.json.JsonReadException: 1.96: ""photo_info"": expecting the end of an object (""}"")
at com.dropbox.core.json.JsonReader.expectObjectEnd(JsonReader.java:82)
at com.dropbox.core.DbxEntry$File$PhotoInfo$1.read(DbxEntry.java:412)
at com.dropbox.core.DbxEntry$File$PhotoInfo$1.read(DbxEntry.java:393)
at com.dropbox.core.DbxEntry$PendingReader.read(DbxEntry.java:957)
at com.dropbox.core.json.JsonReader.readField(JsonReader.java:30)
at com.dropbox.core.DbxEntry._read(DbxEntry.java:880)
at com.dropbox.core.DbxEntry.read(DbxEntry.java:826)
at com.dropbox.core.DbxEntry$File$1.read(DbxEntry.java:315)
at com.dropbox.core.DbxEntry$File$1.read(DbxEntry.java:310)
at com.dropbox.core.json.JsonReader.readFully(JsonReader.java:386)
at com.dropbox.core.json.JsonReader.readFully(JsonReader.java:292)
at com.dropbox.core.DbxClient.startGetSomething(DbxClient.java:472)
at com.dropbox.core.DbxClient.startGetFile(DbxClient.java:452)
searchAPI也会发生类似的异常。 相同的代码段在之前的1.7.7版本中运行良好,我可以下载文件。
请帮我解决这个问题。提前谢谢!