xslt
xslt 정책을 사용하여 API 정의의 페이로드에 XSLT 변환을 적용하십시오.
게이트웨이 지원
| 게이트웨이 | 정책 버전 |
|---|---|
| DataPower® Gateway (v5 compatible) | 1.0.0 |
| DataPower API Gateway | 2.0.0 2.1.0 (DataPower API Gateway 버전 10.0.4.0 이상) |
이 항목에서는 OpenAPI 소스에서 정책을 구성하는 방법을 설명합니다. 어셈블리 사용자 인터페이스에서 정책을 구성하는 방법에 대한 자세한 내용은 XSLT를 참조하십시오.
정보
XSLT 정책의 구조는 다음과 같습니다.
- xslt:
version: version
title: Title
description: Description
input: Input_True_False
source: Transform참고: DataPower API Gateway를 사용하는 경우 xslt 정책에 대한 입력은 구문 분석된 데이터여야 합니다. 구문 분석된 데이터를 생성하는 한 가지 방법은 어셈블리 플로우에서 xslt 정책 전에 구문 분석 조치의 명시적 제어를 제공하는
parse 정책을 사용하는 것입니다.특성
다음 표에서는 정책 특성에 대해 설명합니다.| 특성 | 필수 | 설명 | 데이터 유형 |
|---|---|---|---|
| version | 예 | 정책 버전 번호입니다. | 문자열 |
| title | 예 | 해당 정책의 제목입니다. | 문자열 |
| description | 아니오 | 정책의 설명입니다. | 문자열 |
| input | 아니오 | 이 XSLT 입력 문서가 컨텍스트의 현재 페이로드를 사용하는지 여부 또는 입력이 없는지 여부를 표시합니다. 기본값은 |
부울 |
| 아니오 | true로 설정된 경우 XSLT 정책에서 생성된 출력 트리가 직렬화됩니다. message.body의 컨텐츠가 XML 트리 대신 직렬화된 2진 데이터로 업데이트됩니다.기본값은 |
부울 | |
| source | 예 | 실행할 XSLT 변환 소스입니다. | 문자열 |
| 아니오 | XSLT 프로세서 버전입니다. 기본값은 XSLT10입니다. | 문자열 | |
| 아니오 | 엄격한 XSLT 오류 검사를 사용할지 여부입니다. 엄격하지 않은 조작에서는 비선언 변수 사용, 비선언 템플리트 호출 등 특정 오류로부터 복구하려고 시도합니다. 기본적으로 엄격한 XSLT 오류 검사가 사용됩니다. | 부울 | |
| 아니오 | 스타일시트 프로파일링을 사용할지 여부입니다. 이 옵션은 프로덕션 환경에서 사용하지 않아야 합니다. 기본적으로 스타일시트 프로파일링은 사용되지 않습니다. | 부울 | |
| 아니오 | 디버그 모드에서 스타일시트, XQuery 스크립트 및 JSONiq 스크립트를 실행할지 여부입니다. 스타일시트, XQuery 스크립트 또는 JSONiq 스크립트가 디버그 모드에서 실행되면 일반 출력을 표시하는 대신 사용자 정의 웹 페이지를 생성합니다. 웹 페이지는 변수 값과 출력의 특정 부분이 발생한 위치를 포함하여 실행 중에 발생한 결과를 정확히 설명합니다. 이 옵션은 프로덕션 환경에서 사용하지 않아야 합니다. 기본적으로 디버그 모드는 비활성화되어 있습니다. | 부울 | |
| 아니오 | 스타일시트를 스트리밍 모드에서 실행해야 하는지 여부입니다. 입력이 완전히 구문 분석되기 전에 문서 변환이 시작됩니다. 일부 스타일시트는 스트리밍할 수 없습니다. 스타일시트를 스트리밍할 수 없지만 오류가 생성되고 입력이 처리되지 않습니다. 기본적으로 스트리밍 모드는 사용되지 않습니다. | 부울 | |
| 아니오 | 스트리밍 모드에서 스타일시트를 실행할지 여부입니다. 입력이 완전히 구문 분석되기 전에 문서 변환이 시작됩니다. 일부 스타일시트는 스트리밍할 수 없습니다. 스타일시트를 스트리밍할 수 없는 경우 컴파일링 중에 경고가 생성되고 실행 시 전체 입력에서 정상적으로 스타일시트를 읽습니다. 기본적으로 스트리밍 모드에서 스타일시트를 실행하려는 시도는 사용 불가능합니다. | 부울 | |
| 아니오 | 처리 중에 스타일시트에서 생성된 출력을 이스케이프할지 여부입니다. 최소 이스케이프는 특히 영어 외의 문자 세트를 처리할 때 유용합니다. 기본적으로 최소 이스케이프는 사용되지 않습니다. | 부울 | |
| 아니오 | 스타일시트 또는 기타 컴파일된 컨텐츠를 실행하는 동안 스택에서 사용할 수 있는 최대 바이트 수입니다. 이 설정은 무한 순환 차단에 사용됩니다. 최소값은 10KB 또는 10,240바이트입니다. 최대값은 100MB 또는 104,857,600바이트입니다. 기본값은 1MB 또는 1,048,576바이트입니다. | 정수 | |
| 아니오 | WS-I 기본 프로파일 (버전 1.0, 2004년 4월) 의 섹션 5를 준수하는지 확인되는 WSDL 파일에 적용할 유효성 검증 동작입니다. 기본 설정은 경고입니다.
|
문자열 | |
| 아니오 | soap:Body의 유효성 검증 동작입니다. 기본 설정은 엄격입니다.
|
문자열 | |
| 아니오 |
|
문자열 | |
| 아니오 | 결함 세부사항에 대한 유효성 검증 동작을 지정합니다. 기본 설정은 엄격입니다.
|
문자열 | |
| 아니오 | RPC 스타일 래퍼와의 호환성을 요구할지 여부. 기본적으로 RPC-스타일 랩퍼는 필요하지 않습니다. | 부울 | |
| 아니오 | 이러한 속성이 XML 스키마 스펙을 위반하는 경우에도 스키마가
xsi:type='SOAP-ENC:Array' SOAP 1.1 섹션 5와 일치하는 대부분의 요소 사용을 승인하도록 허용할지 여부입니다. 일반적으로 xsi:type 속성은 요소의 실제 유형과 같거나 이 유형에서 파생된 유형의 이름을 지정해야 합니다. 이 옵션을 사용하여 컴파일된 스키마의 경우, 요소 유형이 SOAP-ENC:Array에서 파생된 경우 SOAP 1.1 Encoding 'Array' 복합 유형에 대해 xsi:type 가 특별히 승인됩니다. 그 반대는 일반적 허용 케이스입니다. 기본적으로 xsi:type='SOAP-ENC:Array' 가 있는 요소는 허용되지 않습니다. |
부울 | |
| 아니오 | SOAP 1.1 섹션 5의 인코딩 규칙에 따라 추가 스키마 유효성 검증을 수행할지 여부입니다. 활성화되면 SOAP 배열의 멤버가 검증되고 @id 및 @href와 같은 속성은 스키마에서 허용하지 않더라도 허용되며 @href 값은 해당 @id 요소가 있는지 확인하기 위해 검사됩니다. 기본적으로 추가 유효성 검증은 수행되지 않습니다. | 부울 | |
| 아니오 | 스키마의 xs:any 요소가 이름별 하위 요소만 유효성 검증하는지 여부입니다. XML 스키마 스펙에서는 와일드카드가 요소와 일치하지만 해당 요소에 요소 선언이 없는 경우 대신 xsi:type 속성에 따라 요소의 유효성을 검증해야 합니다. 이 옵션은 해당 xsi:type 속성을 무시합니다. 추가 유효성 검증 단계에서 SOAP 1.1 인코딩 규칙을 사용하여 와일드카드와 일치하는 컨텐츠를 유효성 검증하는 SOAP 엔벨로프 유효성 검증과 같은 경우에 이 옵션을 사용해야 합니다. 기본적으로 xsi:type 속성은 무시되지 않습니다. |
부울 | |
| 아니오 | WSDL에서 SOAP 바인딩을 엄격하게 따를지 여부입니다. 사용되면, SOAP 1.2에 바인드된 메시지만 SOAP 1.2 엔벨로프에 나타나고 SOAP 1.1에 바인드된 메시지만 SOAP 1.1 엔벨로프에 나타납니다. 기본적으로 엄격한 SOAP 바인딩은 사용되지 않습니다. | 부울 | |
| 아니오 | 디버그 정보를 사용하여 XACML 정책을 컴파일할지 여부입니다. XACML 디버깅 메시지는 XACML 카테고리의 로그 이벤트로도 제어할 수 있습니다. 전체 XACML 디버깅 메시지를 보려면 디버그 로그 레벨을 사용하십시오. 기본적으로 XACML 정책은 디버그 정보로 컴파일되지 않습니다. | 부울 | |
| 아니오 | 스키마 또는 WSDL 문서가 MTOM/XOP 스펙에 따라 base64로 인코딩된 2진 컨텐츠가 최적화된 메시지를 승인하는지 여부를 지정합니다. XOP 2진최적화는 base64-encoded 2진 데이터를 첨부 파일에 있는 인코딩되지 않은 2진 데이터를 참조하는 xop:Include 참조 요소로 대체합니다. 기본적으로 MTOM/XOP 최적화 메시지는 사용되지 않습니다.
|
부울 |
또한 API Designer 어셈블리 편집기를 사용하여 API에 기본 제공 정책을 추가함으로써 xslt 정책을 적용할 수도 있습니다. 자세한 내용은 ‘내장 정책’ 섹션의 XSLT 항목을 참조하십시오.
OpenAPI 의 xslt 정책 정의 예시는 ‘내장 정책’ 섹션에 있는 XSLT 정책 예시를 참조하십시오.