Створення, керування, підтримка: Практичний посібник з Aspose.Cells Cloud Management API

Створення порожньої книги, перейменування листа, стискання роздутого файлу або відновлення пошкодженого — це маленькі щоденні завдання, які все ще поглинають час розробників, коли у вас немає потрібного інструменту. ManagementController перетворює їх на однорядкові команди.

Кожен застосунок, який працює з електронними таблицями, зрештою стикається з однаковими непривабливими завданнями:

  • Створення нової, порожньої книги «на льоту» — іноді з брендованого шаблону.
  • Перевпорядкування листів — додавання, перейменування, видалення, зміна порядку — тому що структура даних змінилася з учора.
  • Оптимізація розміру файлу — стиснення 40 МБ XLSX до 8 МБ перед надсиланням електронною поштою.
  • Відновлення пошкодженого файлу — того, який користувач зберіг неправильно, або інструмент експортував з помилками.
  • Перевірка структури — визначення, які листи, таблиці, діаграми та області з об’єднаними клітинками містяться у книзі без її відкриття.

ManagementController у мікросервісі Aspose.Cells Cloud (джерело: src/Aspose.Cells.Cloud.MicroService/Controllers/ManagementController.cs) обробляє все це за чистим REST‑інтерфейсом. У цьому дописі представлено його 15 кінцевих точок з готовими до виконання прикладами cURL, які ви можете вставити у ваш конвеєр вже сьогодні.

1. Що робить ManagementController?

ManagementController — це контролер, присвячений життєвому циклу та обслуговуванню робочої книги. На відміну від ConversionController (конвертація форматів), DataProcessingController (масове об’єднання/розділення/імпорт), або CellsController (читання/запис на рівні клітинок), цей контролер стосується форми, стану та метаданих самої робочої книги.

Відповідальність Типові кінцеві точки
Створити робочі книги, за бажанням з шаблону spreadsheet/create
Перевірити структуру — worksheets, merged cells, full structure JSON spreadsheet/worksheets, spreadsheet/mergedcells, spreadsheet/structure, {name}/worksheets/{worksheet}/mergedcells, {name}/structure
Змінити розташування листа — add, delete, rename, move spreadsheet/add/worksheet, spreadsheet/delete/worksheet, spreadsheet/rename/worksheet, spreadsheet/move/worksheet
Обслуговувати — compress, repair, accept revisions spreadsheet/compress, spreadsheet/repair, spreadsheet/accept-all-revisions, {name}/accept-all-revisions

Кожна кінцева точка приймає робочу книгу як multipart‑вхід (локально) або посилається на вже існуючу в хмарному сховищі (віддалено) і повертає або змінену потокову робочу книгу, JSON‑корисне навантаження, або просте OK.

2. П’ятнадцять кінцевих точок у огляді

# HTTP Маршрут Джерело Що робить
1 PUT /v4.0/cells/spreadsheet/create — Створити нову робочу книгу, за бажанням з шаблону
2 PUT /v4.0/cells/spreadsheet/worksheets Локальний Перелічити всі листи (назва + тип)
3 PUT /v4.0/cells/spreadsheet/add/worksheet Локальний Додати лист з типом, назвою, позицією
4 PUT /v4.0/cells/spreadsheet/delete/worksheet Локальний Видалити лист за назвою
5 PUT /v4.0/cells/spreadsheet/rename/worksheet Локальний Перейменувати лист
6 PUT /v4.0/cells/spreadsheet/move/worksheet Локальний Перемістити лист до нового індексу
7 PUT /v4.0/cells/spreadsheet/compress Локальний Стиснути робочу книгу для зменшення розміру
8 PUT /v4.0/cells/spreadsheet/repair Локальний Відновити пошкоджену робочу книгу
9 GET /v4.0/cells/{name}/worksheets/{worksheet}/mergedcells Хмарний Перелічити області об’єднаних клітинок у віддаленому листі
10 PUT /v4.0/cells/spreadsheet/mergedcells Локальний Перелічити області об’єднаних клітинок у локальному листі
11 PUT /v4.0/cells/spreadsheet/accept-all-revisions Локальний Прийняти всі відстежені зміни
12 PUT /v4.0/cells/{name}/accept-all-revisions Хмарний Прийняти всі відстежені зміни у віддаленому файлі
13 PUT /v4.0/cells/spreadsheet/structure Локальний Отримати повну структуру у форматі JSON
14 GET /v4.0/cells/{name}/structure Хмарний Отримати повну структуру віддаленого файлу у форматі JSON
15 PUT /v4.0/cells/spreadsheet/create — (псевдонім — див. #1)

Маршрути передбачають хост https://api.aspose.cloud. Живі виклики виглядають як https://api.aspose.cloud/v4.0/cells/....

3. Перед початком: два передумови

  1. Отримайте облікові дані. Зареєструйтеся на Aspose Cloud Dashboard, створіть застосунок, отримайте Client ID і Client Secret. SDK автоматично обробляють обмін JWT; за допомогою cURL ви обмінюєте їх на токен доступу вручну.
  2. Встановіть SDK — або просто використовуйте cURL. Все це простий REST.
<!-- .NET -->
<PackageReference Include="Aspose.Cells-Cloud" Version="25.x" />
# Python
pip install asposecellscloud

4. Швидкий старт: створення нової робочої книги

PUT /v4.0/cells/spreadsheet/create — найпростіша операція, яку виконує контролер, і одна з найкорисніших. Вона повертає новий файл робочої книги.

cURL

# 1) Get a bearer token
curl -X POST "https://api.aspose.cloud/connect/token" \
  -d "grant_type=client_credentials" \
  -d "client_id=YOUR_CLIENT_ID" \
  -d "client_secret=YOUR_CLIENT_SECRET"

# 2) Create an empty XLSX
curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/create?format=xlsx" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  --output new_workbook.xlsx
Параметр Тип За замовчуванням Значення
format string xlsx Формат вихідного файлу — xlsx, xlsm, xlsb, ods тощо.
template string null Необов’язковий шлях до файлу шаблону. Якщо вказано, новий робочий зошит ініціалізується вмістом і форматуванням шаблону.

Використання шаблону

Якщо у вас є брендований шаблон — логотип у заголовку, кольори бренду у темі, попередньо відформатована таблиця “Invoice” — завантажте його один раз у хмарне сховище, а потім передайте його шлях як template.

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/create?format=xlsx&template=templates/invoice_branded.xlsx" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  --output invoice_2026_09_001.xlsx

Тепер ваш застосунок може створювати нові рахунки, які вже виглядають правильно, без вбудовування будь‑якої логіки стилізації.

5. Покроковий посібник: керування листами у робочій книзі

Ці чотири кінцеві точки керують щоденною структурою робочої книги. Давайте пройдемо реалістичну послідовність: ви завантажили робочу книгу, і вам потрібно отримати список її листів, додати новий, перейменувати існуючий і видалити третій.

5a. Перелік листів

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/worksheets" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: multipart/form-data" \
  -F "file=@my_workbook.xlsx"

Response:

[
  { "WorksheetName": "Sheet1", "SheetType": "Worksheet" },
  { "WorksheetName": "Data", "SheetType": "Worksheet" },
  { "WorksheetName": "Chart1", "SheetType": "Chart" }
]

5b. Додати новий аркуш

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/add/worksheet?sheetType=Worksheet&position=1&sheetName=Summary" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@my_workbook.xlsx" \
  --output updated.xlsx
Параметр Тип За замовчуванням Опис
sheetType string Worksheet Тип нового листа — Worksheet, Chart тощо.
position int end 0-індексована позиція для вставки нового листа
sheetName string auto Назва, яку слід надати новому листу

5c. Перейменувати лист

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/rename/worksheet?sourceName=Sheet1&targetName=Overview" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@my_workbook.xlsx" \
  --output updated.xlsx

5d. Видалити робочий лист

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/delete/worksheet?sheetName=Chart1" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@my_workbook.xlsx" \
  --output updated.xlsx

5e. Перемістити лист

# Move "Data" to position 0 (front of the workbook)
curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/move/worksheet?worksheet=Data&position=0" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@my_workbook.xlsx" \
  --output updated.xlsx

Кожен з цих кінцевих пунктів слідує одному й тому ж шаблону: завантажте робочу книгу у форматі multipart, отримайте змінену робочу книгу назад. Поєднуйте їх у вашому конвеєрі або викликайте їх довільно з інтерфейсу користувача.

6. Покрокова інструкція: стиснення надмірно великої книги

Користувач надіслав вам 40 МБ XLSX, у якому 90 % зайвого XML. PUT /v4.0/cells/spreadsheet/compress зменшує його.

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/compress?level=9" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@bloated.xlsx" \
  --output slim.xlsx
Параметр Тип Значення
level int Ступінь агресивності стиснення. 0 = без стиснення, 9 = максимум.

Рівень 9 у типовій робочій книзі розміром 40 MB часто дає розмір у діапазоні 6–10 MB. Вміст ідентичний; лише ZIP‑стиснення контейнера XLSX посилюється.

7. Покроковий посібник: виправлення пошкодженої книги

Іноді ви отримуєте файл, який Excel відмовляється відкривати. PUT /v4.0/cells/spreadsheet/repair запускає процедуру відновлення двигуна та повертає чисту версію.

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/repair" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@broken.xlsx" \
  --output repaired.xlsx

Немає параметрів. Контролер повторно серіалізує робочу книгу через движок, який відкидає пошкоджені частини та записує структурно коректний файл. Не всі пошкодження можна відновити, але це обробляє поширені випадки — скорочені ZIP‑записи, недійсні посилання на клітинки, неправильні спільні рядки.

Підсумок ключових переваг

  • Один контролер для операцій життєвого циклу. Створюйте, перебудовуйте, стискайте, відновлюйте, перевіряйте — все в одному механізмі автентифікації та одному контракті помилок.
  • Створення з урахуванням шаблону. Не потрібно повторно реалізовувати стилізацію у вашому додатку; дозвольте серверу вбудовувати шаблон у кожну нову робочу книгу.
  • Локальні та віддалені варіанти. Та сама логіка, незалежно від того, чи файли знаходяться у браузері користувача, чи вже в хмарному сховищі.
  • Інспекція структури. Кінцева точка structure повертає повну JSON‑карту листів, таблиць, зведених таблиць, діаграм та форм — ідеально підходить для керування UI або конвеєром валідації.
  • Нульова інфраструктура. Без встановлення Excel, без COM, без серверу для підтримки.