一尘不染

PHP file_get_contents()返回“无法打开流:HTTP请求失败!”

php

我在从PHP代码调用URL时遇到问题。我需要使用我的PHP代码中的查询字符串来调用服务。如果我在浏览器中键入该URL,就可以正常工作,但是如果我使用file-
get-contents()进行调用,则会得到:

警告:file-get-contents(http:// ....)无法打开流:HTTP请求失败!HTTP / 1.1 202在…中接受

我使用的代码是:

$query=file_get_contents('http://###.##.##.##/mp/get?mpsrc=http://mybucket.s3.amazonaws.com/11111.mpg&mpaction=convert format=flv');
echo($query);

就像我说的那样-从浏览器中调用即可正常运行。有什么建议么?

我也尝试了另一个网址,例如:

$query=file_get_contents('http://www.youtube.com/watch?v=XiFrfeJ8dKM');

效果很好…可能是我需要调用的网址中包含第二个网址http://吗?


阅读 793

收藏
2020-05-26

共1个答案

一尘不染

尝试使用cURL。

<?php

$curl_handle=curl_init();
curl_setopt($curl_handle, CURLOPT_URL,'http://###.##.##.##/mp/get?mpsrc=http://mybucket.s3.amazonaws.com/11111.mpg&mpaction=convert format=flv');
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_USERAGENT, 'Your application name');
$query = curl_exec($curl_handle);
curl_close($curl_handle);

?>
2020-05-26