最近我已經實現在Java使用該Google Docs API v3.0的應用程序。創建這樣的新條目:谷歌文檔API「setMd5Checksum」不工作
DocumentListEntry newEntry = new DocumentListEntry();
newEntry.setFile(file, Common.resolveMimeType(file)); //Common is a custom class
newEntry.setFilename(entryTitle.getPlainText()); //entryTitle is a TextConstruct
newEntry.setTitle(entryTitle);
newEntry.setDraft(false);
newEntry.setHidden(file.isHidden());
newEntry.setMd5Checksum(Common.getMD5HexDigest(file));
相信我,當我告訴你,Common.getMD5HexDigest(file)
返回一個有效且唯一的MD5哈希值十六進制。
現在,在檢索文件並通過entry.getMd5Checksum()
方法檢查MD5校驗和時,文件上傳得當,它始終返回null
。
我用盡了一切辦法,甚至成立了ETag
,ResourceID
和VersionID
但是大家都能用默認值(null
或服務器生成的字符串)覆蓋。
很抱歉,但如果你主張Common.getMD5HexDigest(文件)返回一個唯一的哈希我不信任你。 – jarnbjo 2012-02-20 17:19:38
@jarnbjo我用方法代碼更新了問題。 – Ben 2012-02-20 17:29:25
所以你正在使用的散列不僅僅是非唯一的,而且也是不正確的。 – jarnbjo 2012-02-22 10:58:45