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を用いて記述した例を参照してください。