Недавно я внедрил приложение в Java, которое использует Google Docs API v3.0. Новые записи создаются следующим образом:Google Docs 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 хэш шестнадцатеричного.
Теперь файл загружается должным образом при извлечении файла и проверке контрольной суммы MD5 с помощью метода entry.getMd5Checksum()
, он всегда возвращает null
.
Я пробовал все, даже установить ETag
, ResourceID
и VersionID
, но все они получают переопределение со значениями по умолчанию (null
или сервер генерируемых строк).
Извините, но я не доверяю вам, если вы утверждаете, что Common.getMD5HexDigest (файл) возвращает уникальный хэш. – jarnbjo
@jarnbjo Я обновил вопрос с помощью кода метода. – Ben
Итак, хэш, с которым вы работаете, не просто не уникален, но и неправилен. – jarnbjo