Как сделать POST-запрос в Android при помощи JSoup или аналогичной библиотеки\функции?

Здравствуйте, я - новичок в Android-программировании. Пытаюсь сейчас сделать маленькое приложение, которое будет менять настроение пользователя в соцсети "Я.ру". Согласно странице из API, необходимо создать такой запрос:

POST /person/{uid}/post/ HTTP/1.1
Host: api-yaru.yandex.ru
Content-Type: application/atom+xml; type=entry; charset=utf-8
Content-Length: 199
Authorization: OAuth vF9dft4qmT

<entry xmlns="http://www.w3.org/2005/Atom" xmlns:y="http://api.yandex.ru/yaru/">
    <category scheme="urn:ya.ru:posttypes" term="status"/>
    <content>Новый статус</content>
    <y:comments_disabled/>
</entry>


Но я совсем не понимаю, как это сделать!
Пытаюсь сделать запрос такого вида:
Connection.Response res = Jsoup.connect(src.attr("href")+"?oauth_token="+Main.getToken()).method(Method.POST).execute();


который должен обращаться к указанной странице, но как туда поместить Content-Type, type, charset, content-length, поле авторизации, category scheme и всё остальное - не знаю.
Помогите, пожалуйста.
  • Вопрос задан
  • 5884 просмотра
Решения вопроса 1
@constv
jsoup.org/apidocs
org.jsoup
Interface Connection
To get a new Connection, use Jsoup.connect(String).
header(String name, String value)
Set a request header.
data(String key, String value)
Add a request data parameter.
method(Connection.Method method)
Set the request method to use, GET or POST.


try {
			Connection conn = Jsoup
					.connect("http://4pda.ru/forum/index.php?act=Login&CODE=01");
			conn.data("PassWord", "password");
			conn.data("UserName", "username");
			conn.method(Connection.Method.POST);
			conn.referrer("http%3A%2F%2F4pda.ru%2Fforum%2Findex.php%3F");
			Response resp = conn.execute();
			System.out.println("statusCode: " + resp.statusCode());
			Document doc = conn.url("http://4pda.ru/forum/index.php?").get();
			System.out.println(doc.select("div.user_home").text());
		} catch (IOException e) {
			e.printStackTrace();
		}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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