Dailymotion PHP API json echo结果为空

时间:2014-08-27 16:13:17

标签: php json api dailymotion-api

我使用Dailymotion json API和PHP引用很多代码


如果简单使用浏览器浏览api url,内容“stream_h264_url”可以复制使用而不是播放。 但是使用PHP echo或打印json API拷贝“stream_h264_url”,结果是空白页。

如何做才能解决这个问题? 感谢。

=======更新:=======

这个代码可能很容易理解

<?php

?>

结果是空白页。如果启用“标题位置”。

参见示例视频 http://www.dailymotion.com/video/k3xKoQWm7w1vDR8IxVM

我不明白,为什么使用CodeRunner结果可以播放视频。 在Web浏览器中运行PHP文件将无法正常工作。

抱歉,我放弃了。

2 个答案:

答案 0 :(得分:0)

问题是你没有得到卷曲的回复,或者你只是看不到任何输出?

您是否尝试过使用var_dump(json_decode($content,true));echo $content;来确保您实际收到Daily Motion的回复?

您可能只是获得White Screen of Death

发布视频链接后更新 我想知道问题是你的curl请求是由PHP服务器发送的,而Daily Motion会将auth代码授予你的服务器,但是你尝试使用header: location重定向浏览器,但浏览器不是与您的服务器相同,因此身份验证代码被Daily Motion拒绝,因为它不是由授予授权代码的同一请求者发送的。

答案 1 :(得分:0)

我在我的本地机器上运行你的代码,输出是

Array ( [stream_h264_sd_url] => http://www.dailymotion.com/cdn/H264-320x240/video/xt27x1.mp4?auth=1409329979-2562-powad7sw-c7d26f9df92ba4975d710020e793bd6d [stream_h264_hq_url] => [stream_h264_url] => http://www.dailymotion.com/cdn/H264-512x384/video/xt27x1.mp4?auth=1409329979-2562-s4iclgxy-6f7a4eed9658bc22bf4551c3991bb400 [stream_h264_hd_url] => ) 

确保你的curl和php是最新的

请注意我更改了$ session,因为$ _SESSION是全局的,也可能导致问题

    $ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL,"http://www.dailymotion.com/json/video/xt27x1?fields=stream_h264_sd_url,stream_h264_hq_url,stream_h264_url,stream_h264_hd_url");
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.9) Gecko/20071025 Firefox/2.0.0.9');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$content = curl_exec($ch); 
curl_close($ch); 
print_r(json_decode($content,true));