c # LinkedIn API dquail Oauth меняется с текущего состояния на новое <share>api - PullRequest
0 голосов
/ 12 января 2012

Я скачал dquail-LinkedinOauth-f169b1f с

https://github.com/dquail/LinkedinOauth

Я получил его на работу.Проблема в том, что этот код использует старый API текущего состояния, который устарел и ограничен 140 символами

https://developer.linkedin.com/documents/status-update-api

и был заменен API общего доступа, который допускает 700 символов плюс многодругих функций

https://developer.linkedin.com/documents/share-api

Я отредактировал код для предоставления нового xml и нового URL - но я получаю ошибку.Новый код:

    private void btnUpdateStatus_Click(object sender, EventArgs e)
    {
        try
        {
            //string xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
            //xml += "<current-status>" + txtNewStatus.Text + "</current-status>";
            string xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><share>";
            xml += "<comment>" + txtNewStatus.Text + "</comment><visibility><code>anyone</code></visibility></share>";

            //string response = _oauth.APIWebRequest("PUT", "http://api.linkedin.com/v1/people/~/current-status", xml);
            string response = _oauth.APIWebRequest("PUT", "http://api.linkedin.com/v1/people/~/shares", xml);
            if (response == "")
                txtResults.Text += "\n\rYour new status updated.  view linkedin for status.";
        }
        catch (Exception exp)
        {
            txtResults.Text += "\n\rException: " + exp.Message;
        }

    }

Отправляемый мной XML-код:

 <?xml version="1.0" encoding="UTF-8" ?> 
  <share>
  <comment>"Theres a lot of blood, sweat, and guts between dreams and success.", Paul Bryant</comment> 
  <visibility>
  <code>anyone</code> 
  </visibility>
  </share>

Я получаю следующую ошибку:

"Удаленный сервер возвратил ошибку:(405) Метод не разрешен. "

1 Ответ

0 голосов
/ 13 января 2012

Вы используете PUT, но для API Share в качестве метода требуется POST.

405 означает «Вы используете метод HTTP, который конечная точка не поддерживает»

Насколькоа почему, вы не обновляете текущий статус, вы добавляете новый ресурс.https://developer.linkedin.com/documents/share-api

...