在 C# Web 浏览器中创建 javascript 变量全局范围
Posted
技术标签:
【中文标题】在 C# Web 浏览器中创建 javascript 变量全局范围【英文标题】:Make javascript variable global scope in C# web browser 【发布时间】:2015-10-08 09:45:17 【问题描述】:是否有可能从 c# WebBrowser 组件中的 javascript 读取局部变量?在像 Chrome 这样的标准网络浏览器中,我可以通过调试器(谷歌开发者工具)访问局部变量,然后我可以像这样将变量引入全局范围:
window.myGlovalVar = myLocalVar;
我的情况有哪些可能性?
【问题讨论】:
【参考方案1】:您仍然可以使用 Visual Studio 调试器在托管 WebBrowser
控件的自定义应用程序中调试 JavaScript,如 here 所述。
另一种选择是直接从调试器的 QuickWatch 窗口键入并执行 WebBrowser.InvokeScript
(WPF) 或 WebBrowser.Document.InvokeScript
(WinForms)。
例如,设置一个变量:
webBrowser.InvokeScript("execScript", "window.myGlovalVar = myLocalVar")
稍后查询(将返回上面记住的值myLocalVar
):
webBrowser.InvokeScript("eval", "window.myGlovalVar")
【讨论】:
以上是关于在 C# Web 浏览器中创建 javascript 变量全局范围的主要内容,如果未能解决你的问题,请参考以下文章
使用 Visual Studio 2013 在 C# 中创建 asmx Web 服务
如何在 Asp.NET Core WEB API 中使用 .Net (C#) 在 Payload 中创建具有自定义 JSON 声明的 JWT 令牌