2016-05-08 14 views
2

CURLを使用してAPI呼び出しを行うことができません。以下は、...このための機能を使用することにしたいかもしれないし、あなたのCURLそれが正しくビルドできませCURLCURLは500内部サーバーエラーを返します

$ch=curl_init("http://sms.geekapplications.com/api/balance.php?authkey=2011AQTvWQjrcB56d9b03d&type=4"); 

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_HTTPHEADER, 
array("Authorization: Bearer")); 

// execute the api call 
$result = curl_exec($ch); 
echo ($result); 
+0

curl_error($ ch);を印刷してください。 –

+0

何か情報を表示していませんが、最初の行をコメントするとき$ ch = curl_init( "http://sms.geekapplications.com/api/balance.php?authkey=2011AQTvWQjrcB56d9b03d&type=4");すべてのメッセージを印刷するとすべて正常に動作します。 – Himanshu

+2

これがあなたの本当の認証鍵であれば、それをインターネットに掲示した後に変更することができます。 –

答えて

0

まず使用してAPI呼び出しを行うためのコードです。 print_r($this->getBalance());があなたのバランスで出力配列をすべきでみてください、あなたのコントローラ内で使用してください

//gets geekapplications SMS balance 
function getBalance() { 
    $url = 'http://sms.geekapplications.com/api/balance.php?' . http_build_query([ 
      'authkey' => '2011AQTvWQjrcB56d9b03d', 
      'type' => '4' 
     ]); 
    $ch = curl_init($url); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    $response = curl_exec($ch); 
    $http = curl_getinfo($ch, CURLINFO_HTTP_CODE); 

    if ($http == 200) { 
     $json = @json_decode($response, TRUE); 
     return $json; 
    } else { 
     echo 'There was a problem fetching your balance...'; 
    } 
} 

私の例を参照してください。

+2

jsonのデコードで '@'を使わないでください。私はjsonのエラーに遭遇する可能性を知っていますが、デコードは誰にも近づかないが、エラーを抑制しないのが良い。 – Gntem

+0

@GeoPhoenixはい、正しい。ちょうどphpが設定されていない場合json_decodeはphp itslefのエラーメッセージを表示します。so @はそれを無視します –

+0

上記の関数がコントローラで呼び出されたときにボタンをクリックしてVIEWでこの値を表示する方法を教えてください。 – Himanshu

関連する問題