Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在WebBrowser中欺骗URL_C#_Html_Url_Browser - Fatal编程技术网

C# 在WebBrowser中欺骗URL

C# 在WebBrowser中欺骗URL,c#,html,url,browser,C#,Html,Url,Browser,假设我得到了某个页面的源代码(例如)。现在,我想使用以下方法将此源代码写入WebBrowser: myWebBrowser.Navigate("about:blank"); myWebBrowser.Document.Write(sourceCode); 现在,让我们假设在Example.com的主页上有一个相对URL,例如: <img src="/logo.gif" /> WebBrowser将尝试从关于:blank/logo.gif加载它。我想告诉网络浏览者“当前地址”是

假设我得到了某个页面的源代码(例如)。现在,我想使用以下方法将此源代码写入WebBrowser:

myWebBrowser.Navigate("about:blank");
myWebBrowser.Document.Write(sourceCode);
现在,让我们假设在Example.com的主页上有一个相对URL,例如:

<img src="/logo.gif" />

WebBrowser将尝试从
关于:blank/logo.gif
加载它。我想告诉网络浏览者“当前地址”是
http://example.com
以便它使用
http://example.com/logo.gif

直接写入WebBrowser的Url属性将导致一个Navigate(),它将删除我编写的任何文本

我正在寻找一种解决方案,它不仅适用于图像,还适用于其他元素,如样式表、javascript(例如
)、链接等


这可能吗?

您可以尝试在头部插入
元素:

如何插入标记取决于您使用的语言,但您应将目标放在直接在
之后获取基本标记,以便生成的源代码读取:

<head><base href="http://example.com"/>


当然,如果文档中已经有
元素,您应该删除该元素。

如果您尝试更改地址栏URL,浏览器将在其中导航,对此您无能为力

但是,在HTML中,可以通过使用“伪造”资源的源URL

我认为这是最接近您所能做到的。

您可以在代码中插入一个元素,并声明基是