Toon posts:

[PHP]Connecties via LinkedIn Api ophalen

Pagina: 1
Acties:

Onderwerpen


  • Emgeebee
  • Registratie: December 2009
  • Laatst online: 16-02 18:53
Beste Tweakers,

Ik zit hier al een groot deel van de avond mee te worstelen. Voor een applicatie ben ik bezig om contactpersonen via de LinkedIn Api binnen te halen om die vervolgens te gaan gebruiken. Het authoriseren lukt, ook kan ik de 'business card' (voornaam, achternaam, etc) van de ingelogde en geauthoriseerde linkedIn account ophalen dus de access token wordt afgegeven. Ik zit te worstelen met het ophalen van de 1st degree contacten. Het valt me op dat er vrij weinig tot helemaal niks te vinden is over de LinkedIn api. Misschien omdat het te simpel voor woorden is, maar ik kom er niet uit.

code:
1
2
3
4
5
6
$user = fetch('GET', '/v1/people/~:(id,firstName,lastName)');
$contacts = fetch('GET', '/v1/people/~/connections:(first-name,last-name)');
$contacts= simplexml_load_string($contacts);
    
print "Welkom $user->firstName $user->lastName.";
print$contacts->person[0]->first-name;


[Welkom Voornaam Achternaam] werkt gewoon, de contacts wordt helemaal niks mee gedaan. Misschien doe ik iets fout met het parsen van de XML, daar heb ik weinig kaas van gegeten. De fetch functie heb ik direct van de LinkedIn developer pagina af (https://developer.linkedin.com/documents/code-samples).

Alvast bedankt.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-05 17:03

NMe

Quia Ego Sic Dico.

Wat doet dat streepje op regel 6? Je wil nu een constante genaamd "name" aftrekken van $contacts->person[0]->first (welke niet bestaat, naar ik aanneem) en vervolgens het resultaat daarvan printen. Ik wed dat je na die "Welkom voornaam Achternaam." het getal 0 ziet staan. ;)

Overigens zou je dit zelf ook geweten hebben als je netjes aan het ontwikkelen was op een server waarop error_reporting op E_ALL staat en display_errors op on. Je had dan twee notices gekregen die je in de juiste ricthing zouden sturen.

Anyway, vervang regel 6 eens door var_dump($contacts->person[0]); of laat desnoods zelfs die \[0] weg, dan weet je wat je terugkrijgt en wat je dus kan aanspreken. ;)

Mocht dat streepje ook daarin voorkomen, dan spreek je die waarde zo aan: $contacts->person[0]->{'first-name'}, maar mooi is anders. ;) Uiteindelijk twijfel ik eraan dat first-name erin staat trouwens, want ik zie in de docs overal netjes firstName gebruikt worden...

[Voor 16% gewijzigd door NMe op 26-08-2014 00:01]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Cartman!
  • Registratie: April 2000
  • Niet online
Bij user parse je niet los en bij contacts wel, doet fetch() dat niet al voor je? Ookal is dat t geval gaat nog steeds 100% op wat NMe zegt.

edit: heb even de link gevolgd op desktop en die fetch() haalt json op en decode dit netjes voor je, waarom je met XML aan de slag gaat daarna is me dus een raadsel :) Waar het bij je ontbreekt nu is dus debuggen, print met var_dump() of print_r() eens op je scherm wat er in $contacts zit en je moet er toch snel genoeg uitkomen.

[Voor 57% gewijzigd door Cartman! op 28-08-2014 22:38]



Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee