Интеграция в веб‑приложение ASP.NET Core обеспечивает бесшовное редактирование документов непосредственно в вашем веб‑портале. GroupDocs.Editor Cloud SDK for .NET предоставляет мощный API, который позволяет загружать, редактировать и сохранять файлы DOCX на сервере. Это руководство проведёт вас через необходимую настройку, покажет пошаговый код и предоставит полный пример, который можно запустить за несколько минут. К концу вы сможете добавить редактирование документов в приложение ASP.NET Core с уверенностью.

Требования и настройка

Прежде чем начать, убедитесь, что у вас есть следующее:

  • .NET 6.0 SDK или более поздняя версия, установленная
  • IDE, например Visual Studio 2022 или VS Code
  • Учётная запись GroupDocs Cloud для получения Client Id и Client Secret
  • Доступ к машине разработки на Windows, Linux или macOS

Интеграция в веб‑приложение ASP.NET Core также требует надёжного сетевого соединения с конечными точками GroupDocs Cloud, поскольку вся обработка документов происходит удалённо. Планируйте среду развертывания соответствующим образом.

Установите SDK через NuGet:

dotnet add package GroupDocs.editor-Cloud

Скачайте последнюю версию пакета с официальной страницы релизов: GroupDocs.Editor Cloud SDK for .NET Download.

Создайте объект конфигурации с вашими учётными данными (выдержка из полного примера):

var configuration = new Configuration
{
    ClientId = "client_id",
    ClientSecret = "client_secret"
};

После установки пакета и подготовки учетных данных вы можете перейти к реализации. В следующих разделах подробно объясняется каждый фрагмент кода, чтобы вы поняли, как библиотека вписывается в общую архитектуру веб‑приложения ASP.NET Core.

Пошаговое руководство по интеграции в веб‑приложение ASP.NET Core

В этом разделе процесс интеграции в веб‑приложение ASP.NET Core разбивается на отдельные, управляемые шаги. Каждый шаг включает короткий фрагмент кода, взятый непосредственно из эталонной реализации.

Шаг 1: Настройка учетных данных API

Сначала создайте объект Configuration с данными вашего клиента и создайте клиент EditorApi.

var configuration = new Configuration
{
    ClientId = "client_id",
    ClientSecret = "client_secret"
};

var editorApi = new EditorApi(configuration);

Класс EditorApi задокументирован в API справка. Инициализация клиента один раз за запрос обычно достаточна для большинства сценариев; вы также можете зарегистрировать его как singleton в контейнере внедрения зависимостей ASP.NET Core для лучшей производительности.

Шаг 2: Определить параметры загрузки

Укажите исходный файл и желаемое место вывода, используя LoadOptions. Этот объект сообщает сервису, какой документ открыть и куда сохранить сгенерированный HTML.

var loadOptions = new LoadOptions
{
    FileInfo = new FileInfo { FilePath = "input.docx" },
    RenderOptions = new RenderOptions { OutputPath = "output.html" }
};

LoadOptions, FileInfo и RenderOptions позволяют управлять тем, как документ отображается для редактирования. Например, вы можете установить RenderOptions, чтобы включить изображения, сохранить оригинальные стили или ограничить количество отображаемых страниц.

Шаг 3: Вызов LoadDocument

Вызовите API для загрузки и конвертации документа. В этом примере вызов синхронный, но вы также можете использовать асинхронную версию, если действие вашего контроллера является асинхронным.

var loadResult = editorApi.LoadDocument(loadOptions);

Метод LoadDocument возвращает объект результата, содержащий URL‑адреса отрендеренного HTML и другие метаданные. Вы можете сохранить loadResult для последующего получения или передать HTML напрямую во front‑end.

Шаг 4: Обработка результата загрузки

После загрузки вы можете отдать HTML фронтенду или сохранить его для последующего использования. Этот шаг завершает процесс интеграции редактора документов в веб‑приложение ASP.NET Core и подготавливает документ к взаимодействию с пользователем.

В реальном сценарии вы обычно будете возвращать HTML‑контент из действия контроллера:

return Content(loadResult.HtmlContent, "text/html");

Возможно, вам также стоит реализовать кэширование, чтобы избежать повторной загрузки одного и того же документа, что может улучшить время отклика при integrating into an ASP.NET Core web application в масштабе.

Интеграция Document Editor в веб‑приложение ASP.NET Core — полный пример кода

Следующий код демонстрирует весь процесс от настройки до загрузки файла DOCX.

var configuration = new Configuration
{
    ClientId = "client_id",
    ClientSecret = "client_secret"
};

var editorApi = new EditorApi(configuration);

var loadOptions = new LoadOptions
{
    FileInfo = new FileInfo { FilePath = "input.docx" },
    RenderOptions = new RenderOptions { OutputPath = "output.html" }
};

var loadResult = editorApi.LoadDocument(loadOptions);

Примечание: Этот пример кода демонстрирует базовую функциональность. Прежде чем использовать его в вашем проекте, убедитесь, что обновили все пути к файлам и значения конфигурации в соответствии с вашей реальной средой, проверьте, что все необходимые зависимости правильно установлены, и тщательно протестируйте в вашей среде разработки. Если вы столкнётесь с какими‑либо проблемами, обратитесь к официальной документации или свяжитесь с командой поддержки за помощью.

Использование cURL для интеграции редактирования документов в ASP.NET Core

Если вы предпочитаете прямой подход через REST, то ту же операцию можно выполнить с помощью команд cURL. Этот метод полезен для быстрого прототипирования или когда необходимо интегрировать редактор в сервис, который не написан на .NET.

1. Аутентификация и получение токена доступа

curl -X POST "https://api.groupdocs.cloud/v2.0/auth/token" \
     -H "Content-Type: application/json" \
     -d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'

Ответ содержит access_token, используемый в последующих вызовах.

2. Загрузить исходный файл

curl -X POST "https://api.groupdocs.cloud/v2.0/editor/storage/upload?path=/input.docx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -F "file=@input.docx"

3. Загрузить документ для редактирования

curl -X POST "https://api.groupdocs.cloud/v2.0/editor/load" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
           "fileInfo": { "filePath": "input.docx" },
           "renderOptions": { "outputPath": "output.html" }
         }'

4. Скачать отрендеренный HTML

curl -X GET "https://api.groupdocs.cloud/v2.0/editor/storage/download?path=/output.html" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o output.html

Эти команды демонстрируют, как добавить редактирование документов в приложение ASP.NET Core без написания какого-либо кода C#, что удобно для быстрого тестирования или интеграции с другими сервисами. Для получения более подробной информации см. официальную документацию API.

Освоив как .NET библиотеку, так и чистый REST API, вы получаете гибкость при интеграции в веб‑приложение ASP.NET Core, позволяя выбрать подход, который лучше всего соответствует вашей архитектуре.

Часто задаваемые вопросы

Дополнительное чтение