WebView2 応用テクニック
リクエスト時にヘッダーの追加とPOSTデータを指定する
WebView2でリクエストする際に、ヘッダーを追加したり、POSTデータを送信することができます。
CreateWebResourceRequestメソッドにてリクエストの情報を作成し、NavigateWithWebResourceRequestメソッドでリクエストします。
CreateWebResourceRequestメソッドでは、リクエスト先のURL、メソッドの種類(POST/GET)、POSTデータ、ヘッダ情報を設定できます。
//C#
var request = webView2.CoreWebView2.Environment.CreateWebResourceRequest(
uri: "https://web.biz-prog.net/test/testpage_info.html",
Method: "POST",
postData: new System.IO.MemoryStream(Encoding.UTF8.GetBytes("{\"test1\" : \"data1\", \"test2\" : \"data2\"}")),
Headers: $"Content-Type: text/json");
サンプル
Private Sub button1_Click(sender As Object, e As EventArgs) Handles button1.Click
Dim request = webView2.CoreWebView2.Environment.CreateWebResourceRequest(
uri:="https://web.biz-prog.net/test/testpage_info.html",
Method:="POST",
postData:=New System.IO.MemoryStream(System.Text.Encoding.UTF8.GetBytes("{""test1"" : ""data1"", ""test2"" : ""data2""}")),
Headers:="User-Agent: Mozilla/5.0")
webView2.CoreWebView2.NavigateWithWebResourceRequest(request)
End Sub
private void button1_Click(object sender, EventArgs e)
{
var request = webView2.CoreWebView2.Environment.CreateWebResourceRequest(
uri: "https://web.biz-prog.net/test/testpage_info.html",
Method: "POST",
postData: new System.IO.MemoryStream(Encoding.UTF8.GetBytes("{\"test1\" : \"data1\", \"test2\" : \"data2\"}")),
Headers: $"User-Agent: Mozilla/5.0");
webView2.CoreWebView2.NavigateWithWebResourceRequest(request);
}
