API Outlook OfficeJS не может разрешить тип содержимого, если расширение указано в верхнем регистре - PullRequest
0 голосов
/ 05 июля 2019

OfficeJS не может разрешить тип содержимого файла, если расширение файла - в верхнем регистре.Это можно легко воспроизвести, прикрепив файл с именем файла в верхнем регистре (например, FOO.JPEG) и выполнив следующий код:

window.Office.context.mailbox.item.attachments.forEach(function(file) { console.log("name: " + file.name +  " type:" + file.contentType);})

Это ошибка?

Ответы [ 2 ]

0 голосов
/ 23 июля 2019

Подтверждено, что это ошибка в API Office.js.Даже если вы исправите MIME-типы в Exchange, это не решит эту проблему с этим API.Слава отвечает правильно, что Exchange должен определять эту информацию, но есть дополнительные проблемы в API, которые вызывают эту ошибку.

В действительности оба exchange / outlook просто ищут расширение и предоставляют оттуда contentType.Вы можете сделать то же самое, но просто глядя на имя файла и расширение.

Я открыл ошибку в нашем бэклоге по этому поводу.Я не могу дать вам информацию, если она будет исправлена ​​в это время.

0 голосов
/ 08 июля 2019

Office.context.mailbox.item.attachments возвращает массив AttachmentDetails.AttachmentDetails представляет вложение на элементе с сервера и содержит свойства вложения, например name, size и т. Д. Одним из свойств является contentType.Все они - только свойства Exchange, и независимо от того, что Exchange установил в эти свойства, JavaScript API предоставит вам.Например, ниже приведено вложение с расширением строчных букв ...

enter image description here

Exchange завершил свойство PR_ATTACH_MIME_TAG_W с типом содержимого.Если вы будете использовать Office Js API, contentType вернет это значение.В то же время вложение со всеми CAPS (на нашем сервере Exchange) вообще не будет иметь PR_ATTACH_MIME_TAG_W ...

enter image description here

Thisпроисходит потому, что Exchange не имеет сопоставления "JPEG" расширение.Очевидно, что если вы используете функцию Office Js API contentType, она вернет пустую строку.Это именно то, что вы наблюдаете.

Чтобы добавить это сопоставление, вам нужно обратиться к системному администратору.Пока сопоставление будет добавлено в вашу среду, Exchange будет разрешать эти расширения файлов, и API Office Js будет предоставлять вам это значение.

...