|
概要
WebBrowser コントロールには、PostData というパラメータを持った Navigate メソッドがあります。
これを使用すると、ユーザーは指定した URL に WebBrowser コントロールでデータを送信することができます。
詳細
Navigate の仕様
URL (Universal Resource Locator) で指定したリソース、またはフル パスで指定したファイルに移動します。
構文
object.Navigate URL [Flags,] [TargetFrameName,] [PostData,] [Headers]
オプション の PostData
HTTP の POST トランザクション中にサーバーに送信されるデータです。たとえば、HTML フォームで収集した
情報を送信するために POST トランザクションが使われます。このパラメータで送信データを指定しない場合、
Navigate メソッドでは HTTP の GET トランザクションが発行されます。URL が HTTP の URL でない場合、
このパラメータは無視されます。
注 : PostData で指定する送信データは、SAFEARRAY 構造体として渡されます。このバリアントは、型が
VT_ARRAY で SAFEARRAY を指していなければなりません。SAFEARRAY は、要素の型が VT_UI1、
1 次元で、送信データのバイト数に等しい要素数を持っていなければなりません。
URL で指定したサーバーに対する PostData のサンプル
Visual Basic を起動します。Visual Basic が既に実行中の場合は、[ファイル] メニューの [新しいプロジェクト]
をクリックします (または Alt + F + N キーを押します)。デフォルトで Form1 が作成されます。
WebBrowser コントロール (WebBrowser1) を Form1 に追加します。
CommandButton (Command1) を Form1 に追加します。
次のコードを Form1 の Command1_Click に追加します。
Sub Command1_Click()
Dim URL As String
Dim Flags As Long
Dim TargetFrame As String
Dim PostData() As Byte
Dim Headers As String
URL = "http://YourServer" ' POST を受信する URL
Flags = 0
TargetFrame = ""
PostData = "Information sent to host"
' VB はデフォルトで Unicode 文字列を作成するため、
' 1 バイト文字セットに変換する必要があります。
PostData = StrConv(PostData, vbFromUnicode)
Headers = "Content-Type: application/x-www-form-urlencoded" & _
vbCrlf
WebBrowser1.Navigate URL, Flags, TargetFrame, PostData, Headers
End Sub
F5 キーを押してプログラムを実行すると、PostData 変数の情報が、URL パラメータで指定したサーバーに送信されます
| |