我试图通过curl连接从URL获取JSON数据.当我打开链接时:它显示{“version”:“N / A”,“success”:true,“status”:true}.
现在,我希望获得以上内容.
到目前为止我使用了这个:
1 2 3 4 5 6 7 8 |
$loginUrl = 'http://update.protect-website.com/index.php?plugin=firewall&action=getVersion' ;
扫描二维码关注公众号,回复:
10877603 查看本文章
$ch = curl_init(); curl_setopt( $ch , CURLOPT_SSL_VERIFYPEER, false); curl_setopt( $ch , CURLOPT_RETURNTRANSFER, true); curl_setopt( $ch , CURLOPT_URL, $loginUrl ); $result =curl_exec( $ch ); curl_close( $ch ); var_dump(json_decode( $result )); |
但是,我总是得到NULL,有人知道哪里出错了吗?
该网站检查用户代理.添加代理选项,它将起作用.
1 2 3 4 5 6 7 8 9 10 11 |
$loginUrl = 'http://update.protect-website.com/index.php?plugin=firewall&action=getVersion' ; $agent = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)' ; $ch = curl_init(); curl_setopt( $ch , CURLOPT_SSL_VERIFYPEER, false); curl_setopt( $ch , CURLOPT_RETURNTRANSFER, true); curl_setopt( $ch , CURLOPT_URL, $loginUrl ); curl_setopt( $ch , CURLOPT_USERAGENT, $agent ); $result =curl_exec( $ch ); curl_close( $ch ); var_dump(json_decode( $result )); |