Witam serdecznie,

Chce zrobić logowanie na swojej stronie internetowej poprzez NK.PL. Potrzebuję pobrać adres email, imię z NK.

Mam następujący kod "w guziczku":

  1. require 'nk/src/NK.php';
  2. $conf = new NKConfig();
  3. $conf->permissions = array(NKPermissions::BASIC_PROFILE,NKPermissions::EMAIL_PROFILE,NKPermissions::CREATE_SHOUTS);
  4. $conf->key = 'nazwa[rojektu-aaff8cd2-b150-42aa-87';
  5. $conf->secret = 'xxxxxx-bc21-xxxx-a113-xxx0dxxxxx96';
  6. $conf->callback_url = 'http://domena.pl/?login=nk';
  7.  
  8. $auth = new NKConnect($conf);
  9. echo $auth->button();
  10. echo '<a href="'.$auth->nkConnectLoginUri().'">NK.pl</a>';


oraz weryfikację:
  1. if ($_GET ['login'] == "nk") {
  2.  
  3. $url = "https://nk.pl/oauth2/token";
  4. $fields = array("client_id" => "nazwa[rojektu-aaff8cd2-b150-42aa-87",
  5. "client_secret" => 'xxxxxx-bc21-xxxx-a113-xxx0dxxxxx96",
  6. "grant_type" => "authorization_code",
  7. "redirect_uri" => "http://domena.pl/?login=nk",
  8. "scope" => "BASIC_PROFILE_ROLE,EMAIL_PROFILE_ROLE,CREATE_SHOUTS_ROLE",
  9. "code" => $_GET['code'],
  10. );
  11.  
  12. $ch = curl_init();
  13. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  14. curl_setopt($ch, CURLOPT_URL, $url);
  15. curl_setopt($ch, CURLOPT_POST, true);
  16. curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
  17.  
  18. $string = curl_exec($ch);
  19. curl_close($ch);
  20.  
  21. $data = json_decode($string, true);
  22.  
  23. if (false === isset($data['error'])) {
  24. echo"DZIALA<br>";
  25. // insert into database
  26. }
  27. print_r($data) ;
  28.  
  29. }
  30.  


Niestety nie chce mi to działać i zwraca błąd:
Array ( [error] => invalid_grant [error_description] => Different redirect uri [error_uri] => http://developers.nk.pl/wiki/NKConnect_Errors )

Wie ktoś może co robię nie tak?



Bardzo proszę o pomoc,

Łukasz