Zaten symfony2'deki hwioauthbundle hakkındaki sorularım için bir konu açtım. Symfony2 HWIOauthBundle error with responseSymfony2 HwioAuth - linkedin sitesinden tam profil alınma
Yanıt için stloyd'e teşekkürler, bu bağlantıya erişmek için paketi nasıl kullanacağımı belirlememde bana yardımcı oldu.
Sadece linkedin'den değil, aynı zamanda eğitim, beceri s.o gibi diğer bilgileri de almak istiyorum.
Bunun genellikle HwioAuth ile mümkün olup olmadığından emin değilim?
providers:
....
my_custom_hwi_provider:
id: linkedin.oauth_user_provider
firewalls:
main:
...
oauth:
resource_owners:
linkedin: "/login/check-linkedin"
login_path: /login
failure_path: /login
oauth_user_provider:
service: linkedin.oauth_user_provider
Bu benim hizmet sınıfı Sağlayıcısıdır: benim security.yml olan O benim config.yml
hwi_oauth:
firewall_name: main
resource_owners:
linkedin:
type: linkedin
client_id: %linkedin_client_id%
client_secret: %linkedin_client_secret%
scope: r_fullprofile
infos_url: 'https://api.linkedin.com/v1/people/~:(id,educations,languages,skills)?format=json'
scope: 'r_fullprofile'
paths:
educations: educations
languages: languages
skills: skills
olduğunu Yani ben json give_out Görüldüğü üzere
<?php
namespace XXXX\UtilBundle\Util\OAuthProvider;
use HWI\Bundle\OAuthBundle\Security\Core\User\OAuthUserProvider;
use HWI\Bundle\OAuthBundle\OAuth\Response\UserResponseInterface;
class Provider
{
protected $session, $doctrine;
public function __construct($session, $doctrine) {
$this->session = $session;
$this->doctrine = $doctrine;
}
public function loadUserByOAuthUserResponse(UserResponseInterface $response)
{
//data from LINKEDIN response
var_dump($response);
exit;
}
}
neyi linkedin'den geliyorum. Hier probally yanıt ve eğitim alanları, becerileri boş! korumalı $ oAuthToken olarak
class HWI\Bundle\OAuthBundle\OAuth\Response\PathUserResponse#694 (4) {
protected $paths =>
array(8) {
'identifier' =>
string(2) "id"
'nickname' =>
string(13) "formattedName"
'realname' =>
string(13) "formattedName"
'email' =>
string(12) "emailAddress"
'profilepicture' =>
string(10) "pictureUrl"
'educations' =>
string(10) "educations"
'languages' =>
string(9) "languages"
'skills' =>
string(6) "skills"
}
protected $response =>
array(1) {
'id' =>
string(10) "XYXYXYXYXYXYXY"
}
protected $resourceOwner =>
class HWI\Bundle\OAuthBundle\OAuth\ResourceOwner\LinkedinResourceOwner#699 (8) {
protected $options =>
array(8) {
'authorization_url' =>
string(49) "https://www.linkedin.com/uas/oauth2/authorization"
'access_token_url' =>
string(47) "https://www.linkedin.com/uas/oauth2/accessToken"
'infos_url' =>
string(81) "https://api.linkedin.com/v1/people/~:(id,educations,languages,skills)?format=json"
'csrf' =>
bool(true)
'client_id' =>
string(12) "XYXYXYXYXYXYXY"
'client_secret' =>
string(16) "XYXYXYXYXYXYXY"
'scope' =>
string(29) "r_fullprofile"
'options' =>
array(0) {
...
}
}
protected $paths =>
array(8) {
'identifier' =>
string(2) "id"
'nickname' =>
string(13) "formattedName"
'realname' =>
string(13) "formattedName"
'email' =>
string(12) "emailAddress"
'profilepicture' =>
string(10) "pictureUrl"
'educations' =>
string(10) "educations"
'languages' =>
string(9) "languages"
'skills' =>
string(6) "skills"
}
protected $defaultOptions =>
array(6) {
'client_id' =>
NULL
'client_secret' =>
NULL
'infos_url' =>
NULL
'user_response_class' =>
string(54) "HWI\Bundle\OAuthBundle\OAuth\Response\PathUserResponse"
'scope' =>
NULL
'csrf' =>
bool(false)
}
protected $httpClient =>
class Buzz\Client\Curl#700 (7) {
private $lastCurl =>
resource(286) of type (curl)
protected $options =>
array(2) {
...
}
protected $ignoreErrors =>
bool(true)
protected $maxRedirects =>
int(5)
protected $timeout =>
int(5)
protected $verifyPeer =>
bool(true)
protected $proxy =>
NULL
}
protected $name =>
string(8) "linkedin"
protected $state =>
NULL
protected $storage =>
class HWI\Bundle\OAuthBundle\OAuth\RequestDataStorage\SessionStorage#701 (1) {
private $session =>
class Symfony\Component\HttpFoundation\Session\Session#220 (3) {
...
}
}
public $httpUtils =>
class Symfony\Component\Security\Http\HttpUtils#230 (2) {
private $urlGenerator =>
class Symfony\Bundle\FrameworkBundle\Routing\Router#233 (9) {
...
}
private $urlMatcher =>
class Symfony\Bundle\FrameworkBundle\Routing\Router#233 (9) {
...
}
}
}
protected $oAuthToken =>
class HWI\Bundle\OAuthBundle\Security\Core\Authentication\Token\OAuthToken#696 (11) {
private $accessToken =>
string(179) "XYXYXYXYXYXYXY"
private $rawToken =>
array(2) {
'expires_in' =>
int(5183807)
'access_token' =>
string(179) "XYXYXYXYXYXYXYXY"
}
private $refreshToken =>
NULL
private $expiresIn =>
int(5183807)
private $createdAt =>
int(1378302276)
private $tokenSecret =>
NULL
private $resourceOwnerName =>
NULL
private $user =>
NULL
private $roles =>
array(0) {
}
private $authenticated =>
bool(false)
private $attributes =>
array(0) {
}
}
}
=> değeri özel $ (yanlış) => BOOL
i doğrulanmış Am yetkilendirilir? Ve Linkedin'den kapsam olarak r_fullprofile ile diğer alanlara nasıl erişebilirim?
Saygılarımızla