2

在搜索如何从 Google+ 获取 URL 的共享计数时,我使用了我在这里和几个不同的地方找到的下面的函数。该函数有效,因为它返回计数,但问题是获取单个 URL 的计数大约需要 15 秒。这是有问题的,因为我在我的主页上加载了 5 篇文章并且它们必须显示共享计数。我已经实现了一个缓存解决方案,所以我不必每次都去获取值,但我讨厌一些可怜的傻瓜必须等待 15 秒才能进行一次计数(更不用说,之后还有 4 个额外的)!

有谁知道为什么它这么慢以及这是否是一种已弃用的方法?

function get_plusones($url) {
      $curl = curl_init();
      curl_setopt($curl, CURLOPT_URL, "https://clients6.google.com/rpc");
      curl_setopt($curl, CURLOPT_POST, 1);
      curl_setopt($curl, CURLOPT_POSTFIELDS, '[{"method":"pos.plusones.get","id":"p","params":{"nolog":true,"id":"' . $url . '","source":"widget","userId":"@viewer","groupId":"@self"},"jsonrpc":"2.0","key":"p","apiVersion":"v1"}]');
      curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
      curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-type: application/json'));
      $curl_results = curl_exec ($curl);
      curl_close ($curl);
      $json = json_decode($curl_results, true);
      return intval( $json[0]['result']['metadata']['globalCounts']['count'] );
    }
4

0 回答 0