HTTPを使用して、エミュレータから取得したデータを、ファイルとしてクライアントへデータ転送(ダウンロード)するためのオブジェクトです。
クライアントへデータ転送するためのオブジェクトを生成します。
●オブジェクト生成方法
new WsmgrHttpStream ([url])
●パラメータ
| パラメータ | 説明 | 省略時の初期値 | 
|---|---|---|
| url | クライアントスクリプトの場合 サーバスクリプトの場合 | エミュレータページからのデータ転送リクエストとして実行します | 
●リターン値
オブジェクトの生成に成功するとWsmgrHttpStreamオブジェクトを返します。エラーの場合は、例外をスローします。
●JavaScriptを用いて記述した例
// 2行1桁から23行60桁までを取得
var table = dspemu.screen.getTextArrays(2, 1, 23, 60); 
var httpStream = new WsmgrHttpStream();
httpStream.set(table); 
// ブラウザのダウンロードダイアログが表示されます。
httpStream.get('data.csv', 'text/plain'); 
if(httpStream.getError() == 0) {
    // 成功時の処理
} else {
    // 失敗時の処理
}●メソッド一覧
| メソッド名 | 機能 | |
|---|---|---|
| JavaScript | VB/C# | |
| set | Set | 転送するデータを指定します。 | 
| get | Resp | クライアントへデータ転送を実行します。 | 
| getError | GetError | エラー番号を取得します | 
クライアントに転送するデータを指定します。
●呼び出し形式
set(stringData) set(listData) set(tableData) set(byteData)
●パラメータ
| パラメータ | 説明 | 省略時の初期値 | 
|---|---|---|
| stringData | 文字列データをファイルとして転送します。 | 省略できません | 
| listData | リストデータをファイルとして転送します。 | |
| tableData | テーブルデータをファイルとして転送します。 | |
| byteData | バイトデータをファイルとして転送します。 | 
●リターン値
関数呼び出しが成功するとtrueを返します。エラーの場合はfalseを返します。エラーの詳細は、getError/GetErrorメソッドにより取得できます。
●JavaScriptを用いて記述した例
WsmgrHttpStreamオブジェクトのJavaScriptを用いて記述した例を参照してください。
クライアントへのデータ転送を実行します。
実行が成功すると、ブラウザよりファイルダウンロード画面が表示されます。
●呼び出し形式
get(saveFileName[, mimeType])
●パラメータ
| パラメータ | 説明 | 省略時の初期値 | 
|---|---|---|
| saveFileName | ブラウザに表示されるファイル名を指定 | 省略できません | 
| mimeType | ファイルのMIMEタイプを指定 | 'text/plain' | 
●リターン値
関数呼び出しが成功するとtrueを返します。エラーの場合はfalseを返します。エラーの詳細は、getError/GetErrorメソッドにより取得できます。
本メソッドはファイルダウンロードの完了を待ち合わせません。また、ダウンロードはクライアントのブラウザに依存するため、転送結果を取得することはできません。
●JavaScriptを用いて記述した例
WsmgrHttpStreamオブジェクトのJavaScriptを用いて記述した例を参照してください。
クライアントへのデータ転送を実行します。
実行が成功すると、ブラウザよりファイルダウンロード画面が表示されます。
●呼び出し形式
Resp(page,saveFileName[, mimeType])
●パラメータ
| パラメータ | 説明 | 省略時の初期値 | 
|---|---|---|
| page | アプリケーションで保持しているSystem.WebHttpContextのPageを指定 | 省略できません | 
| saveFileName | ブラウザに表示されるファイル名を指定 | 省略できません | 
| mimeType | ファイルのMIMEタイプを指定 システムで有効な値を指定してください。 | 自動判定します | 
参考
mimeTypeパラメータを省略した場合に、設定された転送データによって自動判定します。
文字列:"text/plain"
リスト:"text/plain"
テーブル:"text/plain"
バイト配列:"application/octet-stream"
mimeTypeが"text/plain"の場合は、charset属性を指定することでエンコーディングタイプが設定できます。
例)text/plain;charset="Shift-JIS"
charset属性が指定されていない場合は"Unicode"が指定されます。
●リターン値
本関数は正常/失敗に関わらず常に例外をスローします。関数呼び出し時は例外処理用のtry-catchブロックを使用し、成功/失敗はgetErrorメソッドを使用して判定してください。
本メソッドはファイルダウンロードの完了を待ち合わせません。また、ダウンロードはクライアントのブラウザに依存するため、転送結果を取得することはできません。
●C#を用いて記述した例
// 2行1桁 から 23行60桁 までをテーブル化します
List<List<String>> table = Dspemu.Screen.ToTable(2, 1, 23, 60);
WsmgrHttpStream httpStream = new WsmgrHttpStream();
httpStream.Set(table);
try {
    httpStream.Resp(page,"zaiko.csv","text/plain");
} catch(Exception) {
    if(httpStream.GetError() == 0) {
        // 成功時の処理
    } else {
        // 失敗時の処理
    }
}注意
本メソッドを使用する場合、アップデートパネル内では使用できません。
関数がエラー終了した時の最新のエラー番号を取得します。エラーが発生していない場合は、0を返します。
●呼び出し形式
getError()
●パラメータ
ありません
●リターン値
エラーが発生していない場合は0を、エラーが発生している場合はそのエラー番号を返します。
エラーの詳細を求める前に別のメソッドが実行されると、直前に失敗したメソッドが設定したエラー番号に上書きされます。
このため、各メソッドの復帰値が失敗した値で返ってきた場合は、すぐにgetError/GetErrorメソッドを用いてエラーの詳細を求めてください。
●JavaScriptを用いて記述した例
WsmgrHttpStreamオブジェクトのJavaScriptを用いて記述した例を参照してください。