2012-07-10 69 views
1

这是我的redirect.php,我总是得到 'HTTP错误500(内部服务器错误):服务器试图完成请求时遇到意外情况。 “声音云错误

PHP代码:

require_once 'Services/Soundcloud.php'; 

// create client object with app credentials 
$client = new Services_Soundcloud('xxxxxxxxxxxxxxxxxxxxxxx'); 
$client->setAccessToken($_GET['code']); 

// make an authenticated call 
$current_user = json_decode($client->get('me')); 
print $current_user->username; 

任何想法?

感谢

回答

2

你需要初始化new Services_Soundcloud时设置clientIDclientSecretredirectURI参数。

您的代码应该是这样的:

index.php 
<?php 

// create client object with app credentials 
include('Services/Soundcloud.php'); 
$client = new Services_Soundcloud('....', '....', 'http://my.redirect.com/url.php'); 
$authorizeUrl = $client->getAuthorizeUrl(); 

?> 

<a href="<?php echo $authorizeUrl; ?>">Connect with SoundCloud</a> 

而且重定向URL:

<?php 

require_once('Services/Soundcloud.php'); 

// create client object with app credentials 
$client = new Services_Soundcloud('.....', '.....', 'http://my.redirect.com/url.php'); 

try { 
    $accessToken = $client->accessToken($_GET['code']); 
    try { 
     $me = json_decode($client->get('me'), true); 
     var_dump($me); 
    } catch (Services_Soundcloud_Invalid_Http_Response_Code_Exception $e) { 
     var_dump($e->getMessage()); 
     exit(); 
    } 

} catch (Services_Soundcloud_Invalid_Http_Response_Code_Exception $e) { 
    var_dump($e->getMessage()); 
    exit(); 
} 

?> 

你可以从developers page

clientIdclientSecret你也可以检出documentation在PHP,Python,Ruby和JS中使用正确的例子。

您可以检查上面的代码此链接:
soundcloud.itnews-bg.com/

+0

我尝试过,但它不工作 – gigir 2012-07-10 14:18:34

+0

回答更新。看来你还需要设置第三个参数'redirectURI'。检出文件。 – tftd 2012-07-10 15:06:56

+0

仍然不起作用。如果我注释掉// $ current_user = json_decode($ client-> get('me'));,错误将不会显示 – gigir 2012-07-10 23:53:17