从外部javascript获取动态变量
我有一个外部文件,它在我的站点上使用带有令牌和过期日期的动态URL呈现视频。看起来是这样的:从外部javascript获取动态变量,javascript,php,Javascript,Php,我有一个外部文件,它在我的站点上使用带有令牌和过期日期的动态URL呈现视频。看起来是这样的: https://www.thevideositeurl.com/embed/231231/ 我通过以下方式将其添加到我的页面: $vid = 231231; $url = file_get_contents("https://www.thevideositeurl.com/embed/{$vid}/") echo $url ; 然后它呈现下面的javascript和一些html <scr
https://www.thevideositeurl.com/embed/231231/
我通过以下方式将其添加到我的页面:
$vid = 231231;
$url = file_get_contents("https://www.thevideositeurl.com/embed/{$vid}/")
echo $url ;
然后它呈现下面的javascript和一些html
<script type="text/javascript">
var sources = [
{
type:"video/mp4",
src:"https://cdn.myvenue.com/media/clips/491355/clip_saple_hd.mp4?expire=1525179619&token=1e52da03af581764724c0e2c428a9faa",
res:"VideoSample",
label: "VideoSample"
}
];
videojs("video", {
nativeControlsForTouch: true,
autoplay: false,
controls: true,
width:'100%',
fluid: true,
loop: false,
muted: false,
poster: "https://cdn.static.myvenue.com/media/assets/images/image.jpg",
etc., etc., etc.
这是可能的吗?假设您想要访问
源数组中的第一个对象(或者可能只有一个),您可以像这样获得视频url
var videoURL = sources[0].src;
基于@Moti的正则表达式的修改版本更新//以获取PHP代码
假设在变量名scriptSrc
中有返回的文本,则此代码将为您提供url
const scriptSrc=`
风险值来源=[
{
输入:“视频/mp4”,
src:“https://cdn.myvenue.com/media/clips/491355/clip_saple_hd.mp4?expire=1525179619&token=1e52da03af581764724c0e2c428a9faa",
res:“视频样本”,
标签:“视频样本”
}...`
const url=scriptSrc.match(/https:\/\/cdn\.myvenue\.com\/[^“]*/)
console.log(url)
您能澄清一下“呈现”是什么意思吗?您的意思是www.thevideositeurl.com
url返回带有此脚本的字符串(包括
标记),或者您的意思是,当您在脚本标记中添加url时,会将此脚本添加到页面?此类型的脚本具有textContent
属性。您可以使用它吗?@Mark\M它会返回一个包含此脚本的字符串(包括标记)@Mark\M我已经更新了我的问题。你能看看它是否有帮助吗?你能解释一下吗?你如何在你的网站(或页面)上包含“动态URL”?这样:$vid=231231;$URL=file\u获取内容(“https://www.thevideositeurl.com/embed/{$vid}/”)echo$url;
然后我在服务器端呈现javascript提及的内容,以及一些您在服务器端使用PHP的HTML?您在哪里需要服务器端或客户端的视频url
?然后@Moti回答了您的问题,但由于您echo$url;
我会给视频url
另一个名称,如$videoURL=preg\u match(“/https:\/\/cdn\.myvenue\.com\/[^\“]*/”,$url)[0];
这在这一行给了我一个sintax错误$url=preg\u match(/https:\/\/cdn\.myvenue\.com\/[^\“]*/”,$url)[0]
这可能是由我的php版本引起的吗?我也接受这一点,因为我相信它可能有效。谢谢!
var videoURL = sources[0].src;
echo $url;
preg_match('/https:\/\/cdn\.myvenue\.com\/[^\"]*/', $url, $matches, PREG_OFFSET_CAPTURE);
$videoURL = ($matches[0][0]);
echo $videoURL;