17

これは簡単だと思っていましたが、何らかの理由でこれに打ちのめされています。

PHP + CURL を使用して、Web フォントのリストを取得しようとしています。コードは簡単です:

        $url = "https://www.googleapis.com/webfonts/v1/webfonts?sort=popularity&key=MY_SERVER_APPS_KEY";

        $ch = curl_init();
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_HEADER, false);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
        $google_response = curl_exec($ch);
        curl_close($ch);            

コードは Google にヒットしていますが、$google_response は常に次を返します。

"error": {
    "code": 403,
    "errors": [
        {
            "domain": "usageLimits",
            "reason": "accessNotConfigured",
            "message": "Access Not Configured"
        }
    ],
    "message": "Access Not Configured"
}

サーバー アクセス キーを設定し、Web サーバーの両方の API キーをそこに置きました。(IP を確認するために、curlmyip.com で WGET を実行しました) [サービス] タブから "Web Fonts Developer API" も有効にしました。

私が見落としている可能性のあるものはありますか?

4

4 に答える 4

21

解決策を見つけました。どうやら、IPv4 ではなく、サーバーの IPv6 アドレスを登録する必要があったようです。それらを追加した後、コードを変更せずに機能しました。

于 2013-01-17T06:32:17.373 に答える
13

私の場合、必要な API が有効になっていませんでした。

有効にする:

  1. https://console.developers.google.comに移動します
  2. 左上のメニューアイコンをクリック
  3. API Managerメニューからクリック
  4. 検索バーで API (YouTube Data API v3 など) を検索し、クリックします。
  5. その API のサブページに移動したら、Enable左上の
于 2016-01-20T21:23:36.757 に答える
4

すべての「許可されたIP」を削除してから、許可されたすべてのIP

于 2014-04-30T05:53:16.590 に答える