Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

matlab.net.http.RequestMessage 클래스

패키지: matlab.net.http
슈퍼클래스: matlab.net.http.Message

HTTP 요청 메시지

설명

처리를 위해 서버로 전송할 HTTP 요청 메시지의 서식을 RequestMessage 클래스를 사용하여 지정할 수 있습니다. 메시지를 전송하려면 send를 사용하고, 전송하기 전에 메시지의 유효성을 검사하려면 complete 메서드를 사용하십시오. 이들 메서드는 필요한 모든 헤더 필드와 기타 메시지 속성을 채웁니다.

클래스 특성

Sealed
true

클래스 특성에 대한 자세한 내용은 클래스 특성 항목을 참조하십시오.

생성

설명

obj = matlab.net.http.RequestMessage는 디폴트 값을 사용하여 요청 메시지를 생성합니다. 메시지를 전송하거나 완료할 때 디폴트 Method 속성은 RequestMethod.GET입니다.

예제

obj = matlab.net.http.RequestMessage(method,header,body)는 하나 이상의 선택적 메시지 속성을 지정합니다. 후행 인수를 생략하고 []을 사용하여 자리 표시자를 지정할 수 있습니다.

obj = matlab.net.http.RequestMessage(requestLine,header,body)RequestLine 속성을 requestLine로 설정합니다. 요청 라인의 내용을 제어해야 할 경우 이 구문을 사용하십시오. 예를 들어, 프록시에 명시적으로 메시지를 전송하려면 RequestLine.RequestTarget 속성을 전체 URI로 설정하십시오. 그렇지 않으면 사용자의 프록시 설정을 기반으로 MATLAB이 프록시를 선택하고, send 메서드는 RequestTarget을 URI의 Path 속성으로 설정하게 됩니다.

obj = matlab.net.http.RequestMessage(requestLine,header,provider)matlab.net.http.io.ContentProvider에서 메시지 본문 데이터를 가져옵니다.

속성

모두 확장

요청 라인으로, matlab.net.http.RequestLine 객체로 지정되거나 메서드, 대상, 프로토콜 버전을 포함하는 string형이나 문자형 벡터로 지정됩니다. 이 라인은 메시지를 전송할 때, 사용자가 지정한 메서드와 URI를 기반으로 하여 자동으로 생성됩니다. 이 속성을 명시적으로 설정하면 해당 내용이 요청 라인으로 사용됩니다. 이 값은 RequestLine 객체나, 구문 분석되어 RequestLine 객체로 변환되는 문자열로 설정될 수 있습니다.

예: 'GET HTTP/1.1'

특성:

GetAccess
public
SetAccess
public
Dependent
true

요청 메서드로, matlab.net.http.RequestMethod 열거형으로 지정되거나 요청 메서드를 나타내는 string형 또는 문자형 벡터로 지정됩니다. 메시지를 전송하려면 RequestMessage.Method 속성이나 RequestLine.Method 속성을 설정하십시오.

예: 'GET'

특성:

GetAccess
public
SetAccess
public
Dependent
true

메시지 헤더로, matlab.net.http.HeaderField 객체로 지정되거나 HeaderField 객체의 벡터로 지정됩니다. Header 속성을 설정하면 MATLAB®이 헤더 필드가 메시지 유형에 적합한지 확인합니다. RequestMessagesend 메서드와 complete 메서드가 적절하게 구성된 요청에 필요한 모든 헤더 필드를 채웁니다.

특성:

GetAccess
public
SetAccess
public

메시지 본문으로, matlab.net.http.MessageBody 객체, matlab.net.http.io.ContentProvider 또는 MessageBody 생성자에 허용되는 데이터로 지정됩니다. 기본적으로 Body는 비어 있습니다([]로 설정됨). Body 속성을 포함하는 요청 메시지는 일반적으로 디폴트 값 'GET'이 아닌 'PUT' 또는 'POST'와 같은 메서드를 사용하지만, 이 규칙이 강제적인 것은 아닙니다.

완료되었거나 수신된 메시지에 ContentTypeField 헤더 필드가 있는 경우 MessageBody.ContentType 속성이 해당 값으로 설정됩니다. 그렇지 않으면, ContentType이 변경되지 않거나 비어 있습니다.

특성:

GetAccess
public
SetAccess
public

메시지 완료 여부로, true 또는 false로 지정됩니다. true 값은 메시지가 완료되었음을 의미합니다.

메시지 유효성을 검사하는 메서드(RequestMessage.sendRequestMessage.complete)는 다음 작업 후 Completed 속성을 true로 설정합니다.

  • 메시지가 유효한지 확인.

  • 필요한 헤더 필드를 추가하고 데이터를 변환하는 등의 처리 완료.

이 속성이 true인 경우 이러한 메서드는 메시지를 수정하지 않으며 send 메서드가 메시지의 유효성을 검사하지 않고 메시지를 전송합니다. 이후에 요청 메시지를 변경하면 Completed 속성이 다시 false로 변경됩니다.

요청 메시지의 임의 헤더와 데이터를 전송하려면 Completedtrue로 설정하여 send 메서드가 메시지를 수정하지 않도록 방지하십시오. 여전히 complete 메서드를 사용하여 메시지의 유효성을 검사할 수 있지만, send 메서드는 메시지가 유효한지 여부에 관계없이 메시지를 전송합니다.

요청 메시지에 데이터가 있으면(Body.Data 속성이 비어 있지 않음), Body.Payload에 원시 데이터가 되는 경우에만 Completedtrue로 설정됩니다. 사용자가 HTTPOptions.SavePayload 속성을 지정하는 경우에만 응답 메시지에서 페이로드가 설정됩니다.

특성:

GetAccess
public
SetAccess
public
Transient
true

데이터형: logical

시작 라인의 메시지로, matlab.net.http.StartLine 객체로 지정됩니다.

특성:

GetAccess
public
SetAccess
public

메서드

모두 확장

예제

모두 축소

웹 사이트에 텍스트를 추가하도록 서버에 요청하는 HTTP 메시지의 형식을 지정합니다. 이 예제는 메시지의 형식만 지정하고 데이터를 보내지는 않습니다.

메시지 본문에 내용을 추가합니다.

data = 'Data to send';
body = matlab.net.http.MessageBody(data);
body.show
Data to send

본문의 데이터형을 설명하는 Content-Type 헤더 필드를 만듭니다.

contentTypeField = matlab.net.http.field.ContentTypeField('text/plain');

응답 메시지에 허용되는 데이터형을 지정하는 Accept 헤더 필드를 만듭니다.

type1 = matlab.net.http.MediaType('text/*');
type2 = matlab.net.http.MediaType('application/json','q','.5');
acceptField = matlab.net.http.field.AcceptField([type1 type2]);

두 개의 헤더 필드를 포함하는 요청 헤더를 생성합니다.

header = [acceptField contentTypeField];

이 메시지를 PUT 요청으로 지정합니다.

method = matlab.net.http.RequestMethod.PUT;

요청 메시지를 만들고 내용을 표시합니다.

request = matlab.net.http.RequestMessage(method,header,body);
show(request)
PUT
Accept: text/*, application/json; q=.5
Content-Type: text/plain

Data to send
R2016b에 개발됨