gpt4 book ai didi

javascript - 替换 JSON 编码的 feed 值的图像 src 协议(protocol) http : with https:

转载 作者:行者123 更新时间:2023-11-28 02:21:54 24 4
gpt4 key购买 nike

我有一个使用 https 协议(protocol)的网站,该网站通过 ajax JSONP 通过 google load feed API 使用 wordpress rss feed,然后迭代返回的 json 对象以注入(inject)内容

问题是内容节点有我想包含的 html,例如海报插入的图像:

  "Title":"post title",
"Content":"<p><img src='http://theothersite.com'/> this is an example post</p>"

当我使用each()迭代json时,内容html被附加,并向浏览器抛出不安全内容警告,因为图像src是http协议(protocol)

 $.each(json.responseData.feed.entries, function(arrayID, News) {
for(var i = 0; i < News.categories.length; i++)
{
html = '<li class="post news"><h3><a target="_blank" href="'+News.link+'">'+News.title+'</a></h3>';
// HERES WHERE ATTENTION NEEDED
html +='<div class="excerpt">'+News.content+'</div></li><hr>';

$("#newsList ul").append(html);

我不知道如何解析 src 的节点内容值,并将任何 src 替换为以 https 作为协议(protocol)的新 src,同时保留所有其他字符串数据

我尝试过匹配,它可以很好地将 src 放入变量中,但它没有占用字符串的其余部分,因此当我替换它时,它没有保留内容

  var iMatches = News.content.match(/src=\"(.+?)\"/igm);  //alert(iMatches);
if (iMatches) {
News.content.replace(/src=\"http:(.+?)\"/igm, /src=\"https:(.+?)\"/igm);}

我还尝试了替换为replace('http:', 'https:'),但这也不起作用

一如既往,感谢任何帮助

最佳答案

String.replace 方法不会更改原始字符串,而是返回一个新字符串。考虑到这一点,您需要使用:

News.content = News.content.replace(...);

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/replace

关于javascript - 替换 JSON 编码的 feed 值的图像 src 协议(protocol) http : with https:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15530830/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com