CoreWebView2.PostWebMessageAsJson Method

Definition

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Overloads

PostWebMessageAsJson(String)

Posts the specified webMessageAsJson to the top level document in this WebView.

PostWebMessageAsJson(String, List<Object>)

Same as PostWebMessageAsJson(String), but also has support for posting DOM objects to page content.

PostWebMessageAsJson(String)

Posts the specified webMessageAsJson to the top level document in this WebView.

C#
public void PostWebMessageAsJson (string webMessageAsJson);

Parameters

webMessageAsJson
String

The web message to be posted to the top level document in this WebView.

Examples

Runs the message event of the window.chrome.webview of the top-level document. JavaScript in that document may subscribe and unsubscribe to the event using the following code:

window.chrome.webview.addEventListener('message', handler)
window.chrome.webview.removeEventListener('message', handler)

Remarks

The event args is an instance of MessageEvent. The IsWebMessageEnabled setting must be true or the message will not be sent. The event arg's data property of the event arg is the webMessageAsJson string parameter parsed as a JSON string into a JavaScript object. The event arg's source property of the event arg is a reference to the window.chrome.webview object. For information about sending messages from the HTML document in the WebView to the host, navigate to WebMessageReceived. The message is sent asynchronously. If a navigation occurs before the message is posted to the page, the message is not be sent.

See also

Applies to

WebView2 .NET 1.0.3065.39 i druge verzije
Proizvod Verzije
WebView2 .NET 1.0.664.37, 1.0.705.50, 1.0.774.44, 1.0.818.41, 1.0.864.35, 1.0.902.49, 1.0.961.33, 1.0.992.28, 1.0.1020.30, 1.0.1054.31, 1.0.1072.54, 1.0.1108.44, 1.0.1150.38, 1.0.1185.39, 1.0.1210.39, 1.0.1245.22, 1.0.1264.42, 1.0.1293.44, 1.0.1343.22, 1.0.1370.28, 1.0.1418.22, 1.0.1462.37, 1.0.1518.46, 1.0.1587.40, 1.0.1661.34, 1.0.1722.45, 1.0.1774.30, 1.0.1823.32, 1.0.1901.177, 1.0.1938.49, 1.0.2045.28, 1.0.2088.41, 1.0.2151.40, 1.0.2210.55, 1.0.2277.86, 1.0.2365.46, 1.0.2420.47, 1.0.2478.35, 1.0.2535.41, 1.0.2592.51, 1.0.2651.64, 1.0.2739.15, 1.0.2792.45, 1.0.2849.39, 1.0.2903.40, 1.0.2957.106, 1.0.3065.39
WebView2 .NET Prerelease 0.9.515, 0.9.538, 0.9.579, 0.9.628, 1.0.674, 1.0.721, 1.0.790, 1.0.824, 1.0.865, 1.0.902, 1.0.955, 1.0.1010, 1.0.1018, 1.0.1056, 1.0.1083, 1.0.1133, 1.0.1158, 1.0.1189, 1.0.1222, 1.0.1248, 1.0.1305, 1.0.1340, 1.0.1369, 1.0.1414, 1.0.1466, 1.0.1549, 1.0.1619, 1.0.1671, 1.0.1724, 1.0.1777, 1.0.1829, 1.0.1905, 1.0.1988, 1.0.2065, 1.0.2106, 1.0.2164, 1.0.2194, 1.0.2357, 1.0.2415, 1.0.2470, 1.0.2526, 1.0.2584, 1.0.2646, 1.0.2730, 1.0.2783, 1.0.2839, 1.0.2895, 1.0.2950, 1.0.3079, 1.0.3116

PostWebMessageAsJson(String, List<Object>)

Same as PostWebMessageAsJson(String), but also has support for posting DOM objects to page content.

C#
public void PostWebMessageAsJson (string webMessageAsJson, System.Collections.Generic.List<object> additionalObjects);

Parameters

webMessageAsJson
String

The web message to be posted to the top level document in this WebView.

additionalObjects
List<Object>

Additional DOM objects posted to the content.

Remarks

The event args is an instance of MessageEvent. The IsWebMessageEnabled setting must be true or the message will not be sent. The event arg's data property of the event arg is the webMessageAsJson string parameter parsed as a JSON string into a JavaScript object. The event arg's source property of the event arg is a reference to the window.chrome.webview object. For information about sending messages from the HTML document in the WebView to the host, navigate to WebMessageReceived. The message is sent asynchronously. If a navigation occurs before the message is posted to the page, the message is not be sent. This additionalObjects is retrieved in web content via the DOM MessageEvent additionalObjects property as an array-like list of DOM objects. Currently these type of objects can be posted:

.NET / WinRT DOM type
CoreWebView2FileSystemHandle [FileSystemHandle](https://developer.mozilla.org/docs/Web/API/FileSystemHandle)
null null
The objects are posted to web content, following the

structured-clone semantics, meaning only objects that can be cloned can be posted. They will also behave as if they had been created by the web content they are posted to. For example, if a FileSystemFileHandle is posted to a web content it can only be re-transferred via postMessage to other web content with the same origin. Warning: An app needs to be mindful when using this API to post DOM objects as this API provides the web content with unusual access to sensitive Web Platform features such as filesystem access! Similar to PostWebMessageAsJson, the app should check the Source property right before posting the message to ensure the message and objects will only be sent to the target web content that it expects to receive the DOM objects. Additionally, the order of messages that are posted between PostWebMessageAsJson and PostWebMessageAsJsonWithAdditionalObjects may not be preserved.

See also

Applies to

WebView2 .NET 1.0.3065.39 i druge verzije
Proizvod Verzije
WebView2 .NET 1.0.2651.64, 1.0.2739.15, 1.0.2792.45, 1.0.2849.39, 1.0.2903.40, 1.0.2957.106, 1.0.3065.39
WebView2 .NET Prerelease 1.0.2646, 1.0.2730, 1.0.2783, 1.0.2839, 1.0.2895, 1.0.2950, 1.0.3079, 1.0.3116