Вопрос по rest – LinkedIn API - как запросить общее количество соединений?

3

Я пытаюсь запросить общее количество соединений, как это:

/people/id=QM86-RIKjb:(connections total)

и используя пример API здесь:https://developer.linkedin.com/documents/profile-api

в примере xml внизу покажите это поле:<connections total="" >

Я пытаюсь сделать запрос, но получаю исключение, что у меня неверный URI:

URI::InvalidURIError: bad URI(is not URI?): /v1/people/id=QM86-RIKjb:(connections total)

Что я делаю неправильно? Есть ли правильный способ запроса таких параметров?

Спасибо!

Ваш Ответ

2   ответа
4

Вы не можете сделать это (вы не можете получить атрибут определенного тега)

Сделай это,

http://api.linkedin.com/v1/people/id=nbqwYraDfd:(connections)

Получите возвращенный ответ, проанализируйте XML, возвращенный на вашем языке программирования, и прочитайте атрибутtotal изconnections тег.

Если вы заинтересованы в получении только общего количества, я бы предложил этот запрос для фильтрации возвращенного ответа,

http://api.linkedin.com/v1/people/id=nbqwYraDfd:(connections:())

Какой язык программирования вы используете, может быть, я могу помочь в разборе возвращенного XML.

Это работает ?http://api.linkedin.com/v1/people/id=QM86-RIKjb:(connections:(id)) ?
@ Joshwant спасибо, я использую Ruby. Я получаю LoadError: нет такого файла для загрузки при попытке сделать этот URL, который заканчивается следующим образом: / people / id = QM86-RIKjb: (connections: ()) & quot; GeekedOut
Тем не мение,http://api.linkedin.com/v1/people/id=nbqwYraDfd:(network:(networkStats)) может быть более эффективным.
Уверены ли выQM86-RIKjb действительный идентификатор, и у вас есть доступ к нему?
@ Joshwant, что другой ответ люди / id = nbqwYraDfd: (Num-соединений) работал. Но твоя тоже была полезна. Спасибо! GeekedOut
3

Чтобы получить количество соединений отAPI профиляВы можете задать API напрямую:

http://api.linkedin.com/v1/people/id=nbqwYraDfd:(num-connections,num-connections-capped)

Который вернется (в зависимости от количества соединений):

<?xml version="1.0" encoding="UTF-8"?>
<person>
  <num-connections>500</num-connections>
  <num-connections-capped>true</num-connections-capped>
</person>

Имейте в виду, что существуют ограничения на поля, доступные для просмотра пользователем - проверьтеПоля профиля документ для деталей. Например, невозможно получить «соединения соединений» - если в вашем примере выше,nbqwYraDfd представляет текущего просмотра пользователя, вы можете использовать:

http://api.linkedin.com/v1/people/id=nbqwYraDfd:(connections)

Который вернется:

<?xml version="1.0" encoding="UTF-8"?>
<person>
  <connections total="XXX" count="YYY" start="0">
    <person>
    ...
    </person>
  </connections>
</person>

А затем проверьте значение итога, просматривая XML (зависит от языка).

Однако еслиnbqwYraDfd это подключение текущего пользователя или отсутствие подключения, вы получите ответ 403:

<?xml version="1.0" encoding="UTF-8"?>
<error>
  <status>403</status>
  <timestamp>1337954306491</timestamp>
  <request-id>25P44ZN249</request-id>
  <error-code>0</error-code>
  <message>Access to other member's connections denied</message>
</error>
Тем не мение,http://api.linkedin.com/v1/people/id=nbqwYraDfd:(network:(networkStats)) может быть более эффективным, чем: (подключений), и лучше, чем: (num-подключений), когда # connection> & gt; 500

Похожие вопросы