You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何避免Instagram应用API调用触达频率上限、降低配额消耗

shadowIGHastag 说明

这是Instagram Graph API后台统计的内部端点别名,无需主动调用,你发起的ig_hashtag_search、标签元数据查询等标签类基础请求,后台会自动归类到该统计项中,属于平台侧正常统计分类,不需要额外处理。

降低API配额消耗方案

  • 直接删除冗余调用
    你当前代码已经硬编码了固定的hashtag值和对应的ID17843308429009249,不需要再调用ig_hashtag_search查询标签ID,也不需要单独调用接口查询该标签的id、name元数据,删除这两个无效请求后,单次函数执行的请求量从3次降至1次,配额消耗直接减少2/3。
  • 新增结果缓存
    热门内容top_media更新频率极低,可将接口返回结果缓存到本地文件、Redis等存储中,设置1~2小时的过期时间,仅缓存过期时再发起新的API请求,大部分业务请求直接走缓存返回,可减少90%以上的API调用量。
  • 按需调用最新内容接口
    你当前已注释recent_media调用逻辑,若无实时获取最新标签内容的强需求,不要开启该接口调用;若确实需要,也可给该接口结果单独设置15~30分钟的缓存,避免频繁请求。

优化后代码示例

function insthashtag()
{
    include "../insta/define.php";
    function makeApiCall($endpoint, $type, $params)
    {
        $ch = curl_init();

        if ('POST' == $type) {
            curl_setopt($ch, CURLOPT_URL, $endpoint);
            curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
            curl_setopt($ch, CURLOPT_POST, 1);
        } elseif ('GET' == $type) {
            curl_setopt($ch, CURLOPT_URL, $endpoint . '?' . http_build_query($params));
        }

        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

        $response = curl_exec($ch);
        curl_close($ch);

        return json_decode($response, true);
    }

    $hashtagId = '17843308429009249';

    $hashtagTopMediaEndpoint = ENDPOINT_BASE . $hashtagId . '/top_media';
    $hashtagTopMediaParams = array(
        'user_id' => $instagramAccountId,
        'fields' => 'id,caption,children,comments_count,like_count,media_type,media_url,permalink',
        'access_token' => $accessToken
    );
    $hashtagTopMedia = makeApiCall($hashtagTopMediaEndpoint, 'GET', $hashtagTopMediaParams);
    $topPost = $hashtagTopMedia['data'][0];
    $topPost1 = $hashtagTopMedia['data'][1];
    $topPost2 = $hashtagTopMedia['data'][3];

    $return = [$topPost['media_type'], $topPost['media_url'], $topPost1['media_type'], $topPost1['media_url'], $topPost2['media_type'], $topPost2['media_url']];
    $jsondata = json_encode($return, JSON_PRETTY_PRINT);
    return $jsondata;
}

调用统计

调用统计

内容的提问来源于stack exchange,提问作者Ander Canales Medina

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 00:36:03