Main Content

matlab.net.http.HeaderField クラス

名前空間: matlab.net.http

HTTP メッセージのヘッダー フィールド

説明

HeaderField クラスは、HTTP メッセージのヘッダー フィールドの実装に使用します。クラスは、ヘッダーの string と MATLAB® オブジェクト、配列および構造体間の変換を提供します。HeaderField プロパティは任意の値に設定できますが、HTTP ヘッダー フィールドには使用できる文字に制約があります。

Name プロパティはヘッダー フィールドのタイプを定義します。MATLAB は matlab.net.http.field 名前空間でよく使用されるフィールドのサブクラスを提供します。サポートされるサブクラスのリストを表示するには、HeaderField.displaySubclasses メソッドを呼び出します。

作成

説明

obj = matlab.net.http.HeaderField(name,value) は、Name プロパティを name に、Value プロパティを value に設定してヘッダー フィールドを作成します。いずれの引数も空の double である [] にすることができます。複数の引数のペアを任意の順序で name1,value1,...,nameN,valueN のように指定できます。最後の value 引数がない場合、HeaderField はそれを空として扱います。

プロパティ

すべて展開する

ヘッダー フィールド名。string または文字ベクトルとして指定します。Name はフィールドのタイプを決定し、それにより Value プロパティの有効な値が決まります。Name[] または空の string に設定する場合、Value[] になります。

このオブジェクトが特定のヘッダー フィールドのタイプを実装するサブクラスのインスタンスの場合、そのクラスは Name プロパティの制約を適用します。

例: 'Content-Type'

属性:

GetAccess
public
SetAccess
public

ヘッダー フィールド値。string または Name プロパティに対して有効なタイプとして指定します。

このプロパティを読み取るときは、Value はフィールドの値を表す string となります。

このプロパティを設定するときは、Value はこのオブジェクトの Name プロパティおよびクラスの両方またはいずれかに基づく、フィールドで受け入れ可能なタイプとなります。結果は string に変換されます。フィールドのタイプに既定値がある場合は、Value を空の string ('' または string('')) に設定します。空の double である [] を指定する場合、要求メッセージの send メソッドおよび complete メソッドはこのフィールドをメッセージに追加しません。

例: 'text/html'

属性:

GetAccess
public
SetAccess
public
Dependent
true

メソッド

すべて展開する

すべて折りたたむ

Content-Type ヘッダー フィールドを作成するには、HeaderField クラスまたは ContentTypeField クラスのコンストラクターのいずれかを使用します。

HeaderField クラスのコンストラクターを使用するときは、Name プロパティを 'Content-Type' として指定します。ただし、フィールド名にスペルミスがある場合、サーバーがメッセージを拒否するまでエラーに気付かないことがあります。不明なフィールド名を警告なしで無視するサーバーもあります。

f1 = matlab.net.http.HeaderField('Content-Type','text/plain');

フィールド名のスペルミスが発生しないため、ContentTypeField クラスのコンストラクターの使用をお勧めします。

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

Value プロパティが同じである場合、使用するコンストラクターに関係なく、フィールドは等価です。

f1 == f2
ans =    1

この例では、mathworks.com からの応答内で特定のヘッダー フィールド Cache-Control を検索する方法を説明します。

メッセージを mathworks.com に送信します。

request = matlab.net.http.RequestMessage;
uri = matlab.net.URI('https://www.mathworks.com');
response = send(request,uri);

Cache-Control を検索してその値を表示します。

field = response.getFields('Cache-Control');
value = field.Value
value = 
"max-age=14400"

ヒント

  • HeaderField コンストラクターは HeaderField クラスのフィールドを作成します。matlab.net.http.field 名前空間で定義されるクラスのフィールドを作成するには、代わりにサブクラスのコンストラクターを使用します。サブクラスのリストについては、HeaderField.displaySubclasses メソッドを呼び出します。

    たとえば、matlab.net.http.field.DateField サブクラスは Date ヘッダー フィールドを作成します。HeaderField クラスを使って Date フィールドを作成する場合、HeaderFieldDateField のインスタンスでない場合でも DateField クラスが値を解釈して適用します。同様に、フィールド値を MATLAB datetime 値に変換する場合は、DateField.convert メソッドが使用されます。

  • HeaderField コンストラクターで Name 引数および Value 引数が拒否される場合は、代わりに GenericField クラス コンストラクターを使用します。

バージョン履歴

R2016b で導入