我有一个CefSharp浏览器控件,它加载一个运行javascript EventSource((的页面。每次事件源返回消息时,页面都会添加一个元素。添加此元素后,我如何判断?事件流永远不会结束,所以我不认为我可以用任何加载完整的处理程序来完成它。像OnHTMLContentChanged这样的东西是我想要的。下面是网页的html。当(document.getElementById("result").innerHTML += event.data + "<br>")
发生这种情况时,我需要我的c#代码来知道。
<!DOCTYPE html>
<html>
<body>
<div id="result"></div>
<script>
if(typeof(EventSource) !== "undefined") {
var source = new EventSource("https://example.com/api/stream");
source.onmessage = function(event) {
document.getElementById("result").innerHTML += event.data + "<br>";
};
} else {
document.getElementById("result").innerHTML = "Sorry, your browser does not support server-sent events...";
}
</script>
更新!我解决了这个问题。在头孢夏普,你可以使用头孢夏普。PostMessage((函数将消息发送回您的C#代码。链接到解决我的问题