2014-09-13 2 views
0

기본 PHP/JS Auth0 통합을 연결하려고했지만 "userInfo"호출은 항상 아무것도 반환하지 않습니다. 빈 배열조차도 반환하지 않습니다. 여기에 설정 방법이 나와 있습니다.Auth0 getUseInfo blank

먼저 매우 간단한 "로그인"페이지.

<?php 
require_once 'config.php'; 
?> 
<!doctype html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Testing Auth0 PHP</title> 
</head> 
<body> 
    <script src="https://cdn.auth0.com/w2/auth0-widget-5.2.min.js"></script> 
    <script> 
     var widget = new Auth0Widget({ 
      domain: "<?php echo $auth0_cfg['domain'] ?>", 
      clientID: "<?php echo $auth0_cfg['client_id'] ?>", 
      callbackURL: "<?php echo $auth0_cfg['redirect_uri'] ?>", 
      callbackOnLocationHash: true 
      }); 
    </script> 
    <button onclick="widget.signin()">Login</button> 
</body> 
</html> 

그런 다음 사용자가 Auth0에 의해 자동으로 리디렉션되는 곳의 콜백 페이지 (해당 부분이 작동하는 것으로 알고 있음).

<?php 

require_once 'vendor/autoload.php'; 
require_once 'config.php'; 

use Auth0SDK\Auth0; 

$auth0 = new Auth0(array(
    'domain'  => $auth0_cfg['domain'], 
    'client_id'  => $auth0_cfg['client_id'], 
    'client_secret' => $auth0_cfg['client_secret'], 
    'redirect_uri' => $auth0_cfg['redirect_uri'] 
)); 

$userInfo = $auth0->getUserInfo(); 

if (!$userInfo) { 
    print 'No user'; 
} else { 
    print 'User'; 
} 

URL입니다 그것에 토큰 정보가 항상 같습니다 : 나는이에 대한 몇 가지 Auth0 튜토리얼을 찾는 시도했습니다

http://localhost/hack/internal.php#access_token=zF...7jWOb&id_token=eyJ0eXAiOi...fvyW8P0DH4k&token_type=bearer 

하지만 저는 누락 된 것을 볼 수 없습니다. Auth0에 익숙한 사람이 이전에이 문제를 겪었습니까?

답변

3

프록시 뒤에서 샘플을 실행하고 있습니까? GetUserInfo은 서버 간 호출 (웹 서버에서 auth0.com으로)입니다. 때로는 (특히 기업 환경에서) 비 사용자 프로세스에서 트래픽이 차단됩니다.

나는 다른 모든 상호 작용이 잘 작동하기 때문에 의심 스럽지만 (웹 서버가 아니라 브라우저를 거쳐야 함)

프록시를 사용하지 않는 네트워크를 통해 빠르게 연결할 수 있습니다.

또한 access_token (내가 민감한 정보이므로 BTW를 삭제 한)으로 계정에 대한 userinfo 엔드 포인트를 테스트했으며 정상적으로 작동합니다. 우편 배달부 또는 이와 동등한 도구에서 직접 테스트 할 수 있습니다.

(핑 나 자세한 내용은 auth0.com AT eugeniop에)

+0

감사합니다. 나는 아직도 어떤 userData도 얻을 수없고 프록시 뒤에 있지도 않다. 전에 내가 이것을 세우고있을 때 나는 뒤에 있을지도 모른다. 나는이 문제를 재검토 할 시간이있을 때 손을 내밀 것이다. – Alex