Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/293.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.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# RSS源中以“开始”开头的URL//&引用;未在WebBrowser控件中加载_C#_Html_Winforms_Rss - Fatal编程技术网

C# RSS源中以“开始”开头的URL//&引用;未在WebBrowser控件中加载

C# RSS源中以“开始”开头的URL//&引用;未在WebBrowser控件中加载,c#,html,winforms,rss,C#,Html,Winforms,Rss,作为一个爱好项目,我正在开发一个基于WindowsForm的RSS聚合器。在webbrowser控件中显示包含html的RSS源的描述时,我遇到了一个问题 给我带来问题的描述示例: "<img border=\"0\" src=\"//images10.newegg.com/NeweggImage/ProductImageCompressAll125/14-487-346-Z01.jpg\" width=\"125\" height=\"94\" title=\"\" alt=\"\"&g

作为一个爱好项目,我正在开发一个基于WindowsForm的RSS聚合器。在webbrowser控件中显示包含html的RSS源的描述时,我遇到了一个问题

给我带来问题的描述示例:

"<img border=\"0\" src=\"//images10.newegg.com/NeweggImage/ProductImageCompressAll125/14-487-346-Z01.jpg\" width=\"125\" height=\"94\" title=\"\" alt=\"\">
问题是img src。如果我在它前面添加
http:
,它可以很好地加载图像。否则,我会得到一个x框,而不是你可以玩游戏的那种

一种解决方法是解析每个描述,并在所有必要的地方添加
http:
字符串,但这似乎是许多不必要的编码,每个提要都会有所不同

有没有更好的方法来显示用html格式化的RSS提要数据,或者有没有方法用webbrowser控件解决上述问题

如何显示用HTML格式化的RSS提要数据

我不确定是否有办法


有没有办法通过webbrowser控件解决上述问题

您可以使用jquery轻松解析所有img的src属性,并在
http:
前面加上前缀:

$(function() {
    $('img').attr('src', function(index, src) {
       return 'http:' + this.getAttribute('src');
    });
});
如何显示用HTML格式化的RSS提要数据

我不确定是否有办法


有没有办法通过webbrowser控件解决上述问题

您可以使用jquery轻松解析所有img的src属性,并在
http:
前面加上前缀:

$(function() {
    $('img').attr('src', function(index, src) {
       return 'http:' + this.getAttribute('src');
    });
});

由于所讨论的URL前面没有协议,因此它将被视为一个相对URL,但显然不会显示本地资源


您可以通过使用中描述的解决方案,并尝试在出现故障时将
http:
粘贴到源
src
上,然后重试来缓解此问题。

由于所讨论的URL没有协议,它将被视为一个相对URL,但显然不会显示本地资源。o在


您可以通过使用中描述的解决方案,并尝试在出现故障时将
http:
粘贴到源
src
上,然后重试来缓解此问题。

通常,当源文件以
/
开头时,意味着可以通过
http
https
提供特定文件。解析时,cur租用协议通常由webbrowser附加。例如,当您处于安全页面
https://www.example.com
该资源将被解读为
https://images10.newegg.com/NeweggImage/ProductImageCompressAll125/14-487-346-Z01.jpg
而在非安全页面上
http://www.example.com
它将被解读为
http://images10.newegg.com/NeweggImage/ProductImageCompressAll125/14-487-346-Z01.jpg
通常,当源文件以
/
开头时,这意味着可以通过
http
https
提供特定文件。解析时,webbrowser通常会附加当前协议。例如在安全页面上
https://www.example.com
该资源将被解读为
https://images10.newegg.com/NeweggImage/ProductImageCompressAll125/14-487-346-Z01.jpg
而在非安全页面上
http://www.example.com
它将被解读为
http://images10.newegg.com/NeweggImage/ProductImageCompressAll125/14-487-346-Z01.jpg
我不喜欢这个答案,因为你基本上重复了问题中所述的内容,他们已经用
http
做了准备,他们正在寻找更好的方法。尽管我不会投反对票,因为这可能是一些人所需要的。亲爱的@imabrokerdude,这不是一个聊天网站。我们是一群专业的程序员。请注意我是如何引用OP来回答多个问题的。OP要求解决方案。请下次在评论之前仔细阅读。谢谢。您好,我不会将此网站视为聊天网站。您可能不喜欢我选择的名称,但我所说的是有效的。为什么要重复OP已经问过的同样的问题?特别是关于前置
http
。你们可以清楚地看到他们已经这样做了。除了为给定问题指定的语言之外的回答步骤,用户为什么要使用javascript解析C#字符串?@ImaBrokeDude:我对此保持中立,但为了清晰和学习,他使用jQuery是有效的。jQuery虽然与c#和WinForms没有直接关系,但它是为解析HTML元素而构建的,而c#HTML解析可能需要一些额外的工作。因此,我将把jQuery包含在WebBrowser控件的文档体中,以便动态解析HTML元素,而不必编写更复杂的c#解析器s在数据传递到WebBrowser控件之前修改数据。这是正确的Jeremy Thompson吗?很公平,我可以理解。但是,是的,每当您希望资源通过与网页相同的协议加载时,可以从url中删除协议,以便浏览器解析资源链接并附加正确的协议。Just希望确保让您知道对RSS源是来自
http
还是
https
敏感。我不喜欢这个答案,因为您基本上重复了问题中所述的内容,他们已经用
http
预写了,他们正在寻找更好的方法来实现这一点。尽管我不会对此投反对票,因为se这可能是一些人所需要的。亲爱的@imabrokerdude,这不是一个聊天网站。我们是一群专业程序员。注意我是如何引用OP来回答多个问题的。OP要求解决方案。请下次在评论之前仔细阅读。谢谢。你好,我不把这个网站当作聊天网站。你可能不喜欢我的名字cho森,但我所说的是正确的。为什么重复OP已经问过的同样的事情?特别是关于