RSS 提要中以“//”开头的 URL 未加载到 WebBrowser 控件中
URLs in RSS feeds beginning with "//" not loading in WebBrowser control
我正在开发一个基于 WindowsForm 的 RSS 聚合器,作为一个业余爱好项目。在网络浏览器控件中显示包含 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 Feed 数据,或者有没有办法解决上述与网络浏览器控件有关的问题?
How to show the RSS Feed data that's formatted with HTML?
不知道有没有办法
Is there a way to fix the issue described above with the webbrowser control?
您可以使用 jquery:
轻松解析所有在 http:
前面的 img 的 src 属性
$(function() {
$('img').attr('src', function(index, src) {
return 'http:' + this.getAttribute('src');
});
});
由于问题中的URL没有前缀协议,所以会被认为是相对的URL,但显然不会有本地资源显示。 More on the subject
您可以通过使用 Determine if Absolute or Relative URL 中描述的解决方案并尝试将 http:
粘贴到源 src
以防失败并重试来缓解此问题。
我正在开发一个基于 WindowsForm 的 RSS 聚合器,作为一个业余爱好项目。在网络浏览器控件中显示包含 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 Feed 数据,或者有没有办法解决上述与网络浏览器控件有关的问题?
How to show the RSS Feed data that's formatted with HTML?
不知道有没有办法
Is there a way to fix the issue described above with the webbrowser control?
您可以使用 jquery:
轻松解析所有在http:
前面的 img 的 src 属性
$(function() {
$('img').attr('src', function(index, src) {
return 'http:' + this.getAttribute('src');
});
});
由于问题中的URL没有前缀协议,所以会被认为是相对的URL,但显然不会有本地资源显示。 More on the subject
您可以通过使用 Determine if Absolute or Relative URL 中描述的解决方案并尝试将 http:
粘贴到源 src
以防失败并重试来缓解此问题。