OAuth2 - 调用未定义的方法 Authorizer::getResourceOwnerId()
OAuth2 - Call to undefined method Authorizer::getResourceOwnerId()
我在 Swift 上使用 Lumen Api & OAuth2-Server-Laravel 存储库和 iOS 应用程序。
我访问了 return 中的 token
有效客户端和用户凭据并将其存储在应用程序中。现在我正在尝试将 token
与 user_id
.
交换
我尝试了我在 OAuth github repo's support 上找到的 getting user_id from access_token
这是我遇到的错误:
Fatal error: Call to undefined method LucaDegasperi\OAuth2Server\Facades\Authorizer::getResourceOwnerId() in /home/vagrant/LumenAPI/app/Http/Controllers/OAuthController.php on line 27
我尝试使用 token
并在 return 中接收 user_id
。
我在 Lumen 的路线如下:
$app->get('/me', 'OAuthController@token');
OAuthController:
namespace App\Http\Controllers;
use LucaDegasperi\OAuth2Server\Facades\Authorizer;
class OAuthController extends Controller
{
private $authorizer;
public function __construct(Authorizer $authorizer)
{
$this->authorizer = $authorizer;
}
public function token()
{
$user_id = $this->authorizer->getResourceOwnerId();
return Response::json(['data'=> $user_id]); //Line 27
}
}
我在 Swift 上使用了这个 GET 请求:
func me(handler: (data: NSDictionary?, error: String?) -> Void)
{
let url = NSURL(string: "/me", relativeToURL: self.baseUrl)
let request = NSMutableURLRequest(URL: url!)
request.HTTPMethod = "GET"
// The request is valid only if the access_token exists
if let t = self.getAccessToken() // valid
{
request.setValue("Bearer \(t)", forHTTPHeaderField: "Authorization")
let taskInstance = DataTaskHandler()
taskInstance.make(request, handler: { (result, error) -> Void in
if let res = result
{
if let jsonDictionary = JSONParser(data: res).dictionary()
{
print(jsonDictionary)
handler(data: jsonDictionary, error: nil)
}
}
})
}
else
{
handler(data:nil, error: "The access token is not available")
}
}
OAuthController 应该是
class OAuthController extends Controller
{
public function __construct()
{
$this->middleware('oauth');
}
public function token(Request $request)
{
$user_id = Authorizer::getResourceOwnerId();
return response()->json(['data'=> $user_id]);
}
我在 Swift 上使用 Lumen Api & OAuth2-Server-Laravel 存储库和 iOS 应用程序。
我访问了 return 中的 token
有效客户端和用户凭据并将其存储在应用程序中。现在我正在尝试将 token
与 user_id
.
我尝试了我在 OAuth github repo's support 上找到的 getting user_id from access_token
这是我遇到的错误:
Fatal error: Call to undefined method LucaDegasperi\OAuth2Server\Facades\Authorizer::getResourceOwnerId() in /home/vagrant/LumenAPI/app/Http/Controllers/OAuthController.php on line 27
我尝试使用 token
并在 return 中接收 user_id
。
我在 Lumen 的路线如下:
$app->get('/me', 'OAuthController@token');
OAuthController:
namespace App\Http\Controllers;
use LucaDegasperi\OAuth2Server\Facades\Authorizer;
class OAuthController extends Controller
{
private $authorizer;
public function __construct(Authorizer $authorizer)
{
$this->authorizer = $authorizer;
}
public function token()
{
$user_id = $this->authorizer->getResourceOwnerId();
return Response::json(['data'=> $user_id]); //Line 27
}
}
我在 Swift 上使用了这个 GET 请求:
func me(handler: (data: NSDictionary?, error: String?) -> Void)
{
let url = NSURL(string: "/me", relativeToURL: self.baseUrl)
let request = NSMutableURLRequest(URL: url!)
request.HTTPMethod = "GET"
// The request is valid only if the access_token exists
if let t = self.getAccessToken() // valid
{
request.setValue("Bearer \(t)", forHTTPHeaderField: "Authorization")
let taskInstance = DataTaskHandler()
taskInstance.make(request, handler: { (result, error) -> Void in
if let res = result
{
if let jsonDictionary = JSONParser(data: res).dictionary()
{
print(jsonDictionary)
handler(data: jsonDictionary, error: nil)
}
}
})
}
else
{
handler(data:nil, error: "The access token is not available")
}
}
OAuthController 应该是
class OAuthController extends Controller
{
public function __construct()
{
$this->middleware('oauth');
}
public function token(Request $request)
{
$user_id = Authorizer::getResourceOwnerId();
return response()->json(['data'=> $user_id]);
}