생성, 관리, 유지: Aspose.Cells Cloud Management API 실용 가이드
빈 워크북을 만들고, 시트 이름을 바꾸고, 부풀어 오른 파일을 압축하거나 손상된 파일을 복구하는 것—이러한 작은 일상 작업들은 적절한 도구가 없을 때 여전히 개발자의 시간을 잡아먹습니다.
ManagementController는 이를 한 줄 코드로 바꿔줍니다.
스프레드시트를 다루는 모든 애플리케이션은 결국 동일한 지루한 작업에 직면합니다:
- 생성 새로운 빈 워크북을 즉석에서 만들기 — 때때로 브랜드 템플릿에서.
- 워크시트 재배열 — 추가, 이름 변경, 삭제, 순서 변경 — 데이터 형태가 어제와 달라졌기 때문에.
- 파일 크기 제어 — 이메일 전 40 MB XLSX 파일을 8 MB로 압축하기.
- 손상된 파일 복구 — 사용자가 잘못 저장했거나 도구가 잘못 내보낸 파일.
- 구조 검사 — 워크북을 열지 않고도 어떤 시트, 테이블, 차트 및 병합 셀 영역이 포함되어 있는지 파악하기.
Aspose.Cells Cloud 마이크로서비스의 ManagementController (소스: src/Aspose.Cells.Cloud.MicroService/Controllers/ManagementController.cs)는 깔끔한 REST 인터페이스 뒤에서 이 모든 것을 처리합니다. 이 게시물에서는 오늘 파이프라인에 바로 붙여넣을 수 있는 실행 가능한 cURL 예제와 함께 15개의 엔드포인트를 소개합니다.
1. ManagementController는 무엇을 하나요?
ManagementController는 워크북 수명 주기 및 관리 전용 컨트롤러입니다. ConversionController(포맷 변환), DataProcessingController(대량 병합/분할/가져오기) 또는 CellsController(셀 수준 읽기/쓰기)와 달리, 이 컨트롤러는 워크북 자체의 형태, 상태 및 메타데이터에 관한 것입니다.
| 책임 | 일반적인 엔드포인트 |
|---|---|
| Create 워크북을 생성하고, 선택적으로 템플릿에서 생성 | spreadsheet/create |
| Inspect 구조 — 워크시트, 병합된 셀, 전체 구조 JSON | spreadsheet/worksheets, spreadsheet/mergedcells, spreadsheet/structure, {name}/worksheets/{worksheet}/mergedcells, {name}/structure |
| Modify 워크시트 레이아웃 — 추가, 삭제, 이름 변경, 이동 | spreadsheet/add/worksheet, spreadsheet/delete/worksheet, spreadsheet/rename/worksheet, spreadsheet/move/worksheet |
| Maintain — 압축, 복구, 수정 사항 수락 | spreadsheet/compress, spreadsheet/repair, spreadsheet/accept-all-revisions, {name}/accept-all-revisions |
모든 엔드포인트는 워크북을 멀티파트 입력(로컬)으로 받거나 클라우드 스토리지에 이미 있는 워크북을 참조하며, 수정된 워크북 스트림, JSON 페이로드 또는 간단한 OK 중 하나를 반환합니다.
2. 한눈에 보는 15개 엔드포인트
| # | HTTP | Route | Source | 작업 내용 |
|---|---|---|---|---|
| 1 | PUT | /v4.0/cells/spreadsheet/create |
— | 새 워크북을 생성합니다. 선택적으로 템플릿에서 생성할 수 있습니다 |
| 2 | PUT | /v4.0/cells/spreadsheet/worksheets |
Local | 모든 워크시트(이름 및 유형)를 나열합니다 |
| 3 | PUT | /v4.0/cells/spreadsheet/add/worksheet |
Local | 유형, 이름, 위치를 지정하여 워크시트를 추가합니다 |
| 4 | PUT | /v4.0/cells/spreadsheet/delete/worksheet |
Local | 이름으로 워크시트를 제거합니다 |
| 5 | PUT | /v4.0/cells/spreadsheet/rename/worksheet |
Local | 워크시트 이름을 변경합니다 |
| 6 | PUT | /v4.0/cells/spreadsheet/move/worksheet |
Local | 워크시트를 새 인덱스로 이동합니다 |
| 7 | PUT | /v4.0/cells/spreadsheet/compress |
Local | 워크북을 압축하여 크기를 줄입니다 |
| 8 | PUT | /v4.0/cells/spreadsheet/repair |
Local | 손상된 워크북을 복구합니다 |
| 9 | GET | /v4.0/cells/{name}/worksheets/{worksheet}/mergedcells |
Cloud | 원격 워크시트의 병합 셀 영역을 나열합니다 |
| 10 | PUT | /v4.0/cells/spreadsheet/mergedcells |
Local | 로컬 워크시트의 병합 셀 영역을 나열합니다 |
| 11 | PUT | /v4.0/cells/spreadsheet/accept-all-revisions |
Local | 모든 추적 변경을 수락합니다 |
| 12 | PUT | /v4.0/cells/{name}/accept-all-revisions |
Cloud | 원격 파일의 모든 추적 변경을 수락합니다 |
| 13 | PUT | /v4.0/cells/spreadsheet/structure |
Local | 전체 구조를 JSON으로 가져옵니다 |
| 14 | GET | /v4.0/cells/{name}/structure |
Cloud | 원격 파일의 전체 구조를 JSON으로 가져옵니다 |
| 15 | PUT | /v4.0/cells/spreadsheet/create |
— | (별칭 — #1 참조) |
라우트는 호스트
https://api.aspose.cloud를 가정합니다. 실제 호출은https://api.aspose.cloud/v4.0/cells/...와 같습니다.
3. 시작하기 전에: 두 가지 전제 조건
- 자격 증명을 가져옵니다. Aspose Cloud Dashboard에 가입하고, 애플리케이션을 생성한 뒤
Client ID와Client Secret을 가져옵니다. SDK는 JWT 교환을 자동으로 처리합니다; cURL을 사용할 경우 직접 베어러 토큰으로 교환해야 합니다. - 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
각 엔드포인트는 동일한 패턴을 따릅니다: 멀티파트로 워크북을 업로드하고 수정된 워크북을 반환받습니다. 파이프라인에 연결하거나 UI에서 필요에 따라 호출하십시오.
6. 워크스루: 부피가 큰 워크북 압축
사용자가 40 MB 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 = 최대 압축. |
일반적인 40 MB 워크북에서 레벨 9는 종종 6–10 MB 범위에 해당합니다. 내용은 동일하며, XLSX 컨테이너의 ZIP 압축만 강화되었습니다.
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 항목, 잘못된 셀 참조, 형식이 잘못된 공유 문자열 — 를 처리합니다.
8. 핵심 이점 요약
- 라이프사이클 작업을 위한 하나의 컨트롤러. 생성, 재구성, 압축, 복구, 검사 — 모두 하나의 인증 모델과 하나의 오류 계약 아래에서.
- 템플릿 인식 생성. 앱에서 스타일링을 다시 구현하지 마세요; 서버가 모든 새 워크북에 템플릿을 삽입하도록 하세요.
- 로컬 및 원격 변형. 파일이 사용자의 브라우저에 있든 이미 클라우드 스토리지에 있든 동일한 로직을 사용합니다.
- 구조 탐색.
structure엔드포인트는 시트, 테이블, 피벗 테이블, 차트 및 도형의 전체 JSON 맵을 반환합니다 — UI 또는 검증 파이프라인을 구동하기에 완벽합니다. - 인프라 제로. Excel 설치 필요 없음, COM 필요 없음, 유지 관리할 서버도 없습니다.