私は、GAE上のPHPで1つの問題しか追跡していませんでしたが、これは実際には非常に一般的です。それはカールのhttpsコールをサポートしません。
これは、Google OpenID [1]やFacebook sdkの呼び出しがhttpsにリダイレクトされるなど、URLをhttpに変更すると簡単に解決されることがよくあります。だから、Facebookのクラスのためのクイックフィックスは、[2]あなたは_graph法にスローされた例外をピックアップし、
を追加する必要があります。httpに$ DOMAIN_MAP HTTPSを変更したり、それに加えてgetUrlメソッド
$url = str_replace('https://', 'http://', self::$DOMAIN_MAP[$name]);
上の文字列を置き換えるのいずれかにあります
if ((string)$e == 'OAuthException: You must use https:// when passing an access token') return $result;
before throw $ e;
場合によっては、$ _SERVER ['HTTPS'] = 'off'を設定する必要があります。しかし、私はまだFacebookが提供するすべての単体テストを実行することはできません...
あなたは、あなたがPHPスクリプトでJavaとURLFetchのトリックを使用することができCURLを使用するように強制されていない場合:それはカールが提供する膨大な機能のリストを欠いたが、単純な場合に適しています
import java.net.URL;
define('URLFetchServiceFactory', new Java('com.google.appengine.api.urlfetch.URLFetchServiceFactory'));
echo URLFetchServiceFactory->getURLFetchService()->fetch(new URL('https://www.google.com/'))->getContent();
。
大変ありがとうございます。 – ykc
@facebook:ようこそ:) – Sarfraz