jQuery / PHP - 从外部页面嵌入图像
Posted
技术标签:
【中文标题】jQuery / PHP - 从外部页面嵌入图像【英文标题】:jQuery / PHP - Embed image from external page 【发布时间】:2022-01-09 10:34:54 【问题描述】:我目前正在开发一个网站,该网站需要我通过 jQuery 或 php 从外部网站加载标签的图像源,以便将该图像嵌入到我的页面上,有没有办法通过 XPath 来做到这一点?
编辑: 基于我所做的额外研究——在此处和之后提出问题之前——我现在找到了解决方案。 Sergey Ligus 给了我正确的方法。 file_get_contents 不起作用的问题是页面似乎阻止了这种请求,我不得不通过 stream_context_create 伪造一个 user_agent。
例子:
$context = stream_context_create([
'http' => [
'user_agent' => 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)',
],
]);
$html = file_get_contents('URL', false, $context);
$dom = new DOMDocument();
$dom->loadHTML($html);
$xpath = new DOMXPath($dom);
$result = '';
foreach ($xpath->query('XPATH') as $child)
$result .= $dom->saveHTML($child);
【问题讨论】:
您是否尝试过在后端使用file_get_contents
或curl
获取页面,然后使用DOMXPath
解析html 内容并将解析的链接保存在数据库中?之后,您可以简单地从 db 获取链接并通过 php 呈现页面,其中包含没有 JQuery 的嵌入链接以及对外部网站的大量不必要的请求。但在这种情况下,我宁愿将解析逻辑移出网站范围/线程,因为它会阻止用户体验,直到所有链接都被获取。
我已经尝试过 file_get_contents 但它不起作用......当我打印 assined 变量时,我只是从我自己的网络服务器打印了“/的索引”......
我不明白这里的问题。您不能将外部 URL 设置为 external.link"> 吗?
【参考方案1】:
我找到了可以回答您问题的内容...https://***.com/questions/22580458/how-to-load-image-from-external-url-in-jquery-wordpress-theme 如果这不能回答你的问题,我可以告诉你如何在 vanilla JS 中做到这一点:)
【讨论】:
以上是关于jQuery / PHP - 从外部页面嵌入图像的主要内容,如果未能解决你的问题,请参考以下文章