dotcraq3249 2013-12-05 13:17
浏览 42
已采纳

使用PHP cURL获取Behance API feed停止工作

up until today the below code was working fine, however, now it has stopped working. Yet if I put the URL in it returns a feed. Any idea what is going on here? I tried to debug Curl with error handling.

<?php
if (!isset($_GET['page']))
    {
    $page = '&page=1';
    }
else
    {
    $page = '&page=' . $_GET['page'];
    }
$curl_handle = curl_init();
//return the transfer as a string 
curl_setopt($curl_handle, CURLOPT_URL, 'http://www.behance.net/v2/users/andrewwelch/projects?api_key=XXX' . $page);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($curl_handle, CURLOPT_USERAGENT, 'Your application name');
curl_setopt($curl_handle, CURLOPT_TIMEOUT, 5);
if(!curl_exec($curl_handle)){
    die('Error: "' . curl_error($curl_handle) . '" - Code: ' . curl_errno($curl_handle));
}
$query = curl_exec($curl_handle);
curl_close($curl_handle);
$projects = (json_decode($query));
;
$i = 0;
$projcount = array();
if (isset($projects))
    {
    foreach (reset($projects) as $value)
        {
        if ($i % 4 == 0)
            {
            if ($i != 0)
                {
                print "</div>";
                }
            print '<div class="row">';
            }
        print '<div class="col-sm-3" style="height:200px;">';
        $covers = (Array) $value->covers;
        print '<a href="' . $value->url . '" target="_blank">';
        $thiscover = array_slice($covers, '1');
        print '<img src="' . reset($thiscover) . '"/>';
        print '<span class="thumb_title">' . $value->name . '</span>';
        print '</a>';
        print '</div>';
        $i++;
        }
    print "</div>";
    $pagenumber = $_GET['page'];
    $prevpagenumber = ($_GET['page'] == 1) ? ($_GET['page']) : ($_GET['page'] - 1);
    if (!($i < 12))
        {
        print '<a class="next-butt" style="float:right; display:inline" href="http://www.andrewwelch.info/web.php?page=' . ($_GET['page'] + 1) . '">Next page >></a>';
        }
    if (($_GET['page']) > 1)
        {
        print '<a class="prev-butt" href="http://www.andrewwelch.info/web.php?page=' . $prevpagenumber . '"><< Previous page</a>';
        }
    }
else
    {
    print 'No projects available.';
    }
?>
  • 写回答

1条回答 默认 最新

  • duanniying2342 2014-01-11 14:34
    关注

    I had the same problem and was getting a connection timed out...but discovered I wasn't setting the User-Agent. Apparently you have it in your code.

    What happens if you put this http://www.behance.net/v2/users/andrewwelch/projects?api_key=XXX on your browser?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度