0

このリンクのガイドである curl を使用して Twitter 経由でログイン解析を実装しようとしています: https://parse.com/docs/rest.html#users-signup

curl -X POST \
-H "X-Parse-Application-Id: REMOVED" \
-H "X-Parse-REST-API-Key: REMOVED" \
-H "Content-Type: application/json" \
-d '{
    "authData": {
      "twitter": {
        "id": "12345678",
        "screen_name": "ParseIt",
        "consumer_key": "REMOVED",
        "consumer_secret": "REMOVED",
        "auth_token": "REMOVED",
        "auth_token_secret": "REMOVED"
      }
    }
  }' \
  https://api.parse.com/1/users

そして、これがPHPでの私の実装コードです:

$ci = curl_init();
$data = '{"authData":{"twitter":{"id":"REMOVED","screen_name":"cat",
"consumer_key":"REMOVED",
"consumer_secret":"REMOVED",
"auth_token":"REMOVED",
"auth_token_secret":"REMOVED"}}}';

$header = array("X-Parse-Application-Id: REMOVED",
"X-Parse-REST-API-Key: REMOVED",
"Content-Type: application/json"
);
curl_setopt ($ci, CURLOPT_HTTPHEADER, $header);
curl_setopt($ci,CURLOPT_POST,true);
curl_setopt($ci,CURLOPT_POSTFIELDS,$data);
curl_setopt($ci,CURLOPT_URL,'https://api.parse.com/1/users');
 $response = curl_exec($ci);
var_dump($response);    
curl_close($ci);

しかし、var_dump($response) の結果は false です。私のコードの何が問題なのかわかりません。どんな体でも私を助けることができますか?

4

1 に答える 1

1

追加

curl_setopt($ci, CURLOPT_SSL_VERIFYPEER, false);

exec(); を実行する前に

デバッグに使用されるプロセス:

  1. の前にcurl_close()、 を使用してprint_r(curl_getinfo())ください。これにより、curl セッションに関するすべてがわかります。
  2. 何も返されないことがわかります。これは、ファイアウォールまたはその他の制限が設定されていることを意味するか、無効なヘッダーのために拒否されていることを意味します.
  3. ブラウザに URL を入力すると、資格情報が必要であることがわかります。したがって、URL は正しく、ファイアウォールではありません。ヘッダーが資格情報を渡していると仮定します (この段階で)
  4. それで、それが SSL であり、SSL の証明書を取得していないことに気付きます。したがって、上記のオプションは、証明書の問題を無視するように指示します。それはうまくいきました、ここでやめてください。(それ以外の場合は、資格情報の問題を追跡します)
于 2012-11-23T01:07:45.480 に答える