matlab.net.http.MessageBody 클래스
네임스페이스: matlab.net.http
HTTP 메시지 본문
설명
MessageBody
객체는 HTTP 메시지 본문을 포함합니다. 요청 메시지에서 Body
속성을 데이터로 설정하거나 데이터를 포함하는 MessageBody
객체로 설정합니다. 응답 메시지에서 이 객체는 수신된 데이터를 포함합니다.
메시지 데이터는 두 가지 속성으로 표현됩니다. Payload
속성은 네트워크로 전송되거나 네트워크에서 수신된 원시 바이트를 포함합니다. Data
속성은 Payload
를 MATLAB® 유형으로 포함합니다. 많은 경우, 이 두 가지 속성 중 하나만 설정합니다.
생성
MessageBody
객체는 HTTP 메시지 본문을 포함합니다. 요청 메시지에서 Body
속성을 데이터로 설정하거나 데이터를 포함하는 MessageBody
객체로 설정합니다. 응답 메시지에서 이 객체는 수신된 데이터를 포함합니다.
메시지 데이터는 두 가지 속성으로 표현됩니다. Payload
속성은 네트워크로 전송되거나 네트워크에서 수신된 원시 바이트를 포함합니다. Data
속성은 Payload
를 MATLAB 유형으로 포함합니다. 많은 경우, 이 두 가지 속성 중 하나만 설정합니다.
속성
Data
— 메시지 데이터
uint8
벡터 또는 배열 | 문자형 배열 | string형 | 구조체형 배열 | 이미지 데이터 | XML DOM | 오디오 데이터 | 테이블
메시지 데이터로, 다음 MATLAB 데이터형 중 하나로 지정됩니다. 변환 세부 정보는 HTTP Data Type Conversion 항목을 참조하십시오.
uint8
벡터 — 변환되지 않는Data
입니다.문자형 배열 또는 string형 스칼라 — Content-Type 헤더에 포함된 미디어 형식과 해당 문자 집합 특성을 기반으로 하여 변환되는
Data
입니다.구조체형 배열 —
webread
와webwrite
를 사용하여 JSON 문자열로 변환되거나 JSON 문자열에서 변환되는Data
입니다.이미지 —
imread
와imwrite
를 사용하여 이미지로 변환되거나 이미지에서 변환되는Data
입니다.XML DOM —
xmlread
와xmlwrite
를 사용하여 문자열 간에 변환되는Data
입니다.오디오 데이터 —
audioread
와audiowrite
를 사용하여 변환되는Data
입니다.테이블 —
readtable
과writetable
을 사용하여 변환되는Data
입니다.기타 유형의 배열 또는 셀형 배열 —
jsonencode
와jsondecode
를 사용하여 JSON으로 변환되거나 JSON에서 변환되는Data
입니다.
요청 메시지에서 Data
속성은 uint8
페이로드로 변환이 수행되기 전의 MATLAB 데이터입니다. 데이터 변환은 RequestMessage
의 send
메서드나 complete
메서드를 호출할 때 수행됩니다. 변환은 메시지에 지정하는 Content-Type과 Data
유형에 따라 달라집니다. Content-Type을 지정하지 않으면 send
메서드와 complete
메서드가 데이터에서 유형을 추정하여 적합한 ContentTypeField를 요청 메시지에 추가하려고 합니다.
응답 메시지에서 Data
는 서버에서 지정한 Content-Type을 기반으로 하여 MATLAB 유형으로 변환된 uint8
페이로드를 나타냅니다. 변환이 실패할 경우 Data
가 빈 상태로 유지되고 원시 데이터가 Payload
속성에 표시됩니다.
응답 Payload
가 자동으로 변환되지 않도록 하려면 HTTPOptions.ConvertResponse
속성을 false
로 설정하십시오. 이 경우, Data
는 문자 데이터를 나타내는 문자열이나 바이트 형식의 uint8
벡터를 포함합니다.
특성:
GetAccess | public |
SetAccess | public |
Dependent | true |
ContentType
— 데이터의 Content-Type
MediaType
객체
Data
속성의 Content-Type으로, 읽기 전용 matlab.net.http.MediaType
객체로 지정됩니다. 이 속성은 Data
속성의 내용이 페이로드로 변환되거나 페이로드에서 변환되는 방식을 결정합니다. Content-Type에 문자 집합 특성이 포함된 MediaType
이 있으면 이 문자 집합에 따라 인코딩이 결정됩니다. 자세한 내용은 RFC Editor 웹사이트의 RFC 2616, section 14.17 Content-Type을 참조하십시오.
이 속성은 일반적으로 이 MessageBody
를 포함하는 메시지의 Content-Type 필드에 대해 convert
를 호출한 결과와 동일한 값을 가집니다.
요청 메시지에는 ContentType
을 설정하지 않아야 합니다. MessageBody
객체를 생성할 때 이 속성은 비어 있습니다. MessageBody
를 요청 메시지로 복사하면 ContentType
이 메시지의 ContentTypeField
값(있는 경우)으로 설정됩니다. RequestMessage
의 send
메서드와 complete
메서드는 Data
유형과 요청 메시지의 ContentTypeField
값을 기반으로 하여 ContentType
을 설정합니다.
응답 메시지에서 ContentType
은 메시지의 ContentTypeField
를 기반으로 합니다.
특성:
GetAccess | public |
SetAccess | public |
Transient | true |
ContentCoding
— 페이로드의 Content-Encoding
string형
이 속성은 ResponseMessage
의 Payload
속성이 인코딩되었음을 나타내기 위해 설정됩니다. ContentCoding
이 설정되어 있으면 페이로드에 대해 어떠한 처리 작업도 수행되지 않으며 Data
속성은 비어 있습니다.
MATLAB이 gzip
또는 deflate
와 같이 지원되는 압축 알고리즘을 사용하여 페이로드가 인코딩된 메시지를 수신하는 경우, 다른 변환을 시도하기 전에 해당 페이로드를 자동으로 디코딩합니다. 디코딩이 성공하면, 선택적으로 Payload
에 디코딩된 페이로드를 저장하고 Data
에 변환된 페이로드(있는 경우)를 저장합니다. 이 경우, 이 속성은 Payload
가 인코딩되지 않았음을 나타내기 위해 비어 있습니다.
페이로드가 인코딩되었지만 디코딩이 실패했거나 HTTPOptions.DecodePayload
속성을 false
로 설정하여 디코딩을 차단한 경우, 아직 인코딩 상태인, 처리되지 않은 페이로드가 Payload
에 반환되고, Data
는 빈 상태로 유지되며, ContentCoding
은 응답 메시지의 Content-Encoding 헤더 필드 값을 나타내는 문자열로 구성된 벡터로 설정됩니다. 이 경우, Payload
를 있는 그대로 저장하거나(예를 들어, 파일로 씀), ContentCoding
에 지정된 압축 알고리즘에 따라 처리할 수 있습니다. 예를 들어, 값이 gzip
인 경우 데이터를 파일에 쓰고 gunzip
명령을 사용하여 데이터를 처리할 수 있습니다.
특성:
GetAccess | public |
SetAccess | public |
Transient | true |
데이터형: string
Payload
— 메시지에서 전송된 원시 바이트
비어 있음 (디폴트 값) | uint8
벡터 | string형 스칼라 | 문자형 벡터
메시지에서 전송된 원시 바이트로, uint8
형 벡터, string형 스칼라 또는 문자형 벡터로 지정됩니다. 요청 메시지에서 편의를 위해 Payload
를 string형 스칼라나 문자형 벡터로 설정할 수 있습니다. MATLAB은 이 값을 uint8
벡터로 변환합니다. 응답 메시지에서 Payload
는 항상 uint8
벡터입니다.
요청 메시지에서 다음이 수행됩니다.
string형 스칼라나 문자형 벡터는
ContentType
속성이 있는 경우 이 속성으로 지정 또는 유추되는 문자 집합을 사용하거나, 아무것도 설정되지 않은 경우UTF-8
인코딩을 사용하여 변환됩니다. 다른 인코딩을 사용하려면 직접 인코딩하고(예:unicode2native
함수 사용) 결과로 반환되는uint8
벡터를Payload
에 할당하십시오.바이트 배열에 대한 출력값을 변환하지 않으려면
Data
속성 대신Payload
를 설정해야 합니다.Data
를 대신 설정하면,RequestMessage.send
에 요청 또는 내역 반환 인수를 지정한 경우 전송된 바이트나,RequestMessage.complete
의 반환 값에 담긴 바이트나,HTTPOptions.SavePayload
속성을 설정한 경우ResponseMessage
에 담긴 바이트로Payload
가 채워집니다.Payload
를 설정하면Data
가 선택 취소됩니다.Data
와Payload
가 모두 설정된 메시지를 전송하면Payload
가 전송되고Data
는 무시됩니다.send
메서드나complete
메서드에서 반환되는 응답 메시지와 요청 메시지에서만 두 속성을 동시에 설정할 수 있습니다.
응답 메시지에서 Payload
는 다음 경우에 수신되는 원시 바이트입니다.
RequestMessage.send
메서드에서 내역 반환 인수를 지정한 경우.HTTPOptions.SavePayload
속성을true
로 설정한 경우.Payload
가LogRecord
에 나타나는 메시지에 대해 항상 설정된 경우.MATLAB 데이터로의 페이로드 변환에 실패한 경우. 자세한 내용은
HTTPException.History
속성을 확인하십시오.
특성:
GetAccess | public |
SetAccess | public |
Dependent | true |
메서드
퍼블릭 메서드
show | 메시지 본문 데이터를 서식 지정하여 표시 또는 반환 |
특화된 연산자와 함수
다음 메서드는 표준 MATLAB 연산자와 함수를 이 클래스의 객체를 위해 특화합니다.
string | Data 속성을 string형으로 반환합니다. 진단이나 디버그를 위해 사용하십시오.
|
char |
|
버전 내역
R2016b에 개발됨
참고 항목
RequestMessage
| ResponseMessage
| MediaType
| ContentTypeField
| Data
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)