2014-09-08 8 views
1

Привет, я использую artdarek oauth для входа в google в laravel. Я написал маршрут следующим образом: Route::get('usersgoogle','[email protected]'); Я использую тот же код, что и в документе oauth documentaion https://github.com/artdarek/oauth-4-laravel (пример для пользователя google).redirect_uri_mismatch oauth google login artdarek/oAuth-4-laravel

Мой контроллер:

class logingoogleController extends BaseController { 

    public function loginWithGoogle() { 

     // get data from input 
     $code = Input::get('code'); 

     // get google service 
     $googleService = OAuth::consumer('Google'); 
     //echo $googleService; 
     // check if code is valid 

     // if code is provided get user data and sign in 
     if (!empty($code)) { 

      // This was a callback request from google, get the token 
      $token = $googleService->requestAccessToken($code); 

      // Send a request with it 
      $result = json_decode($googleService->request('https://www.googleapis.com/oauth2/v1/userinfo'), true); 

      $message = 'Your unique Google user id is: ' . $result['id'] . ' and your name is ' . $result['name']; 
      echo $message. "<br/>"; 

      //Var_dump 
      //display whole array(). 
      dd($result); 

     } 
     // if not ask for permission first 
     else { 
      // get googleService authorization 
      $url = $googleService->getAuthorizationUri(); 

      // return to google login url 
      return Redirect::to((string)$url); 
      //echo "Hi"; 
     } 
    } 

} 

Сейчас в разработчиков Google я создал проект, созданный идентификатор клиента и указали перенаправлении URI вроде следующего: http://domainname.com/usersgoogle Я попытался с http://domainname.com/usersgoogle/ - «/» в последний, но каждый раз, когда он показывает мне ошибку redirect_uri_mismatch. Может ли кто-нибудь сказать мне, как правильно это сделать? что я здесь делаю неправильно?

Мой Google консоли, как следующее: enter image description here

Пожалуйста, помогите. Благодаря передовой ...

+0

Вы были в состоянии найти решение вашей проблемы? вы ничего не упомянули о конфиге, возможно, это проблема. –

+0

config Я использовал то же самое, что упоминалось в документации ..... У меня проблема сейчас ... URL-адрес, который генерировал из laravel, был не таким, каким он был определен в консоли Google для разработчиков. Я использую гибридный auth вместо – shams

+0

попробуйте удалить текущий идентификатор клиента, а затем создайте новый. –

ответ

1

Заменить

$ googleService = OAuth :: потребитель ('Google');

с

$ googleService = OAuth :: потребитель ('Google', перенаправлять URIS);

REDIRECT URIS получен от вашего clientID

+0

даже использовать Artdarek \ OAuth \ Facade \ OAuth :: consumer ('Google', REDIRECT URIS) как мой OAuth :: consumer() не работает – geet