Создание и обновление папок с помощью Microsoft Graph API в Java

Microsoft предоставляет Graph API для взаимодействия и работы с Office 365 и облачными службами Microsoft. Он позволяет создавать папки и управлять ими, получать доступ к сообщениям, управлять категориями и использовать другие службы программно. В этой статье вы узнаете, как использовать Microsoft Graph API для создания и обновления папок в Java.

Java API Microsoft Graph для управления папками

Для создания и обновления папок с помощью Microsoft Graph API мы будем использовать Aspose.Email для Java. API значительно упрощает беспрепятственную работу со службами Office 365 с помощью Microsoft Graph API. Вы можете либо скачать API, либо установить его, используя следующие конфигурации Maven.

Репозиторий:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>

Зависимость:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-email</artifactId>
    <version>22.3</version>
    <classifier>jdk16</classifier>
</dependency>

Создайте папку с помощью API Microsoft Graph в Java

Для связи с API Graph вам необходимо сначала реализовать интерфейс ITokenProvider для аутентификации запросов. Ниже приведена базовая реализация ITokenProvider.

ITokenProvider tokenProvider = new ITokenProvider() {
    Date expirationDate = null;

    @Override
    public void dispose() {
    }

    @Override
    public OAuthToken getAccessToken(boolean ignoreExistingToken) {
        // Получает токен доступа oAuth.
        // Если ignoreExistingToken имеет значение true, запрашивает новый токен с сервера. В противном случае поведение зависит от того, существует ли токен или нет.
        // Если токен существует и срок его действия не истек, возвращает текущий токен, в противном случае запрашивает новый токен с сервера.
        return null;
    }

    @Override
    public OAuthToken getAccessToken() {
        // Получает токен доступа oAuth.
        // Если токен существует и срок его действия не истек, возвращает текущий токен, в противном случае запрашивает новый токен с сервера.
        return new OAuthToken("token", expirationDate);
    }
};

Ниже приведены шаги по созданию папки с помощью Microsoft Graph API в Java.

В следующем примере кода показано, как создать папку с помощью API Microsoft Graph в Java.

// Получить графический клиент
IGraphClient client = GraphClient.getClient(tokenProvider);

// Создать папку
GraphFolderInfo newFolder = client.createFolder("TEST_FOLDER");

Создайте подпапку с помощью Microsoft Graph API в Java

Вы также можете создать подпапку аналогичным образом. Единственное отличие состоит в том, что вы должны указать путь к корневой папке в качестве первого аргумента метода createFolder. В следующем примере кода показано, как создать вложенную папку с помощью API Microsoft Graph в Java.

// Получить графический клиент
IGraphClient client = GraphClient.getClient(tokenProvider);

// Создать папку внутри почтового ящика
GraphFolderInfo newFolder = client.createFolder(GraphKnownFolders.Inbox, "TEST_SUBFOLDER_1");

// Создать подпапку внутри вновь созданной папки
GraphFolderInfo inboxTestSubFolder2 = client.createFolder(newFolder.getItemId(), "TEST_SUBFOLDER_2");

Обновление папок с помощью Microsoft Graph API в Java

Вы также можете получить и обновить существующую папку с помощью Microsoft Graph API. Для этого нужно получить список папок и отфильтровать нужную. Ниже приведены шаги по обновлению папки с помощью Aspose.Email для Java.

  • Сначала получите экземпляр клиента Microsoft Graph, используя метод GraphClient.getClient(ITokenProvider).
  • Затем получите список всех папок с помощью метода IGraphClient.listFolders().
  • После этого перебираем все объекты GraphFolderInfo в списке и выбираем нужный.
  • Затем используйте объект GraphFolderInfo для обновления свойств папки.
  • Наконец, обновите папку с помощью метода IGraphClient.updateFolder(GraphFolderInfo).

В следующем примере кода показано, как обновить папку с помощью API Microsoft Graph в Java.

// Получить графический клиент
IGraphClient client = GraphClient.getClient(tokenProvider);

// Получить список папок
GraphFolderInfoCollection folders = client.listFolders();

// Перебирать папки
for (GraphFolderInfo folderInfo : folders) {
    if(folderInfo.getDisplayName()=="TEST_FOLDER")
    {
    	folderInfo.setDisplayName("NEW_TEST_FOLDER");
    	
    	// Обновить папку
    	GraphFolderInfo updatedFolder = client.updateFolder(folderInfo);
    }   
}

Получите бесплатную лицензию API

Вы можете получить бесплатную временную лицензию на использование Aspose.Email для Java без ограничений на пробную версию.

Вывод

В этой статье вы узнали, как работать с папками с помощью API Microsoft Graph из приложений Java. В частности, вы видели, как создать или обновить папку/подпапку с помощью API Microsoft Graph в Java. Кроме того, вы можете изучить другие возможности Aspose.Email для Java с помощью документации. Кроме того, если у вас возникнут вопросы, вы можете задать их на нашем форуме.

Смотрите также