Использование приглашения LinkedIn с Scribe и Android - PullRequest
1 голос
/ 08 августа 2011

Привет! Я использую Scribe для отправки приглашения в LinkedIn, но я немного не знаю, как его использовать. Я создал тело XML в виде строки со всеми необходимыми вставленными значениями, но когда я выполняю вызов API, приглашение не отправляется. Мой код выглядит следующим образом

        invite.setOnClickListener(new Button.OnClickListener() 
        {
            public void onClick (View v) 
            {
                inviteXml = inviteCreator.inviteString(to, subj, body, authName, authValue);

                titleField.setText("");


                call = "http://api.linkedin.com/v1/people/~/mailbox";
                request = new OAuthRequest(Verb.POST, call);
                //request.addPayload(inviteXml);
                request.addBodyParameter("body", inviteXml);
                service.signRequest(accessToken, request);
                response = request.send();
                nameField.setText(response.getBody());
                invite.setVisibility(View.GONE);
            }
        });

в строке request.addPayload (InviteXml); это приводит к сбою приложения. Строка request.addBodyParameter ("body", InviteXml); возвращает XML-сообщение об ошибке, имеющее статус 400 с кодом ошибки 0 и сообщением «Не удалось проанализировать документ элемента почтового ящика: ошибка: неожиданный конец файла после нуля»

Я поступаю неправильно или пропустил что-то важное? Я прочитал документацию по LinkedIn, но там, похоже, не сказано, как добавить сообщение xml в вызов appi.

Спасибо за любую помощь Джефф

1 Ответ

1 голос
/ 09 августа 2011

Вы пытались указать Длина контента и Тип контента?

Примерно так:

request.addHeader("Content-Length", Integer.toString(inviteXml.length())); request.addHeader("Content-Type", "text/xml");

request.addPayload(inviteXml);

...