이 페이지는 Apigee 및 Apigee Hybrid에 적용됩니다.
Apigee Edge 문서 보기
자바스크립트, 자바, Python과 같은 절차적 언어로 코드를 추가한 다음 API 프록시의 다른 부분에서 해당 코드를 호출할 수 있습니다. 절차적 코드 지원은 흐름 변수, 오류, 요청 및 응답 본문의 복잡한 처리를 보다 쉽게 구현할 수 있도록 설계되었습니다.
절차적 코드를 사용하면 다음을 수행할 수 있습니다.
- 요청 및 응답 값과 같은 복잡한 본문 값을 만들거나 조작합니다.
- 대상 엔드포인트 URL을 마스킹하기 위해 URL을 재작성합니다.
- 포함된 정책과 함께 사용할 수 없는 다른 로직을 추가합니다.
작동 방식
프록시 흐름에서 포함된 코드로 호출을 수행하려면 언어별 정책을 사용합니다. Apigee에는 지원되는 언어별로 자바스크립트 정책, JavaCallout 정책, PythonScript 정책 등의 정책이 별도로 포함되어 있습니다.
다음은 작동하는 한 가지 방식을 대략적으로 설명합니다. 자세한 내용은 정책 참조를 확인하세요.
- 별도의 파일에 사용할 코드를 작성합니다.
- 코드에서 코드 처리 결과를 Apigee 흐름 변수에 배치합니다.
API 프록시의 다른 곳에서 변수 값을 검색합니다. 흐름 변수에 대한 자세한 내용은 흐름 변수로 프록시 상태 관리를 참조하세요.
- 파일(또는 JAR)을 API 프록시에 리소스 파일로 추가합니다.
리소스 파일에 관한 자세한 내용은 리소스 파일을 참조하세요.
- 사용 중인 언어에 해당하는 정책을 추가합니다.
API 프록시 흐름의 원하는 위치에서 코드를 호출할 수 있도록 정책을 구성합니다.
- 정책을 사용하여 흐름 변수에서 코드의 값을 검색하세요.
제한사항
Apigee 보안 모델에서는 네트워크 I/O, 파일 시스템 읽기/쓰기, 현재 사용자 정보, 프로세스 목록, CPU/메모리 사용률과 같은 시스템 호출을 허용하지 않습니다. 이러한 호출의 일부는 작동할 수 있지만 지원되지 않으며 언제든지 사용 중지될 수 있습니다. 이후 버전과의 호환성을 보장하려면 코드에서 이러한 호출을 수행하지 않아야 합니다.
지원되는 언어별 다른 제한사항이 있을 수 있으며 이는 해당 언어의 정책 참조에 설명되어 있습니다.
지원 언어
JavaScript
자바스크립트 지원에는 API 프록시와 관련된 변수와 값을 처리하기 위한 전체 객체 모델이 포함됩니다. 자세한 내용은 자바스크립트 객체 모델을 참조하세요.
정책 참조 정보 및 예시는 자바스크립트 정책을 참조하세요.
자바
자바 콜아웃 정책을 사용하여 프록시 흐름에서 자바 코드를 호출합니다. 정책 참조 주제에 예시가 나와 있습니다.
Python
Python 스크립트 정책을 사용하여 Python 코드를 호출합니다.