Я пытаюсь войти на свой сервер tt-rss, используя libsoup. Начиная с версии 1.5.3 он поддерживает только HTTP POST для получения данных. В основном мне нужно сделать что-то подобное с libsoup:
curl -d '{"op":"login","user":"you","password":"xxx"}' http://example.dom/tt-rss/api/
Но все примеры кода, написанные в vala с использованием POST, устарели и больше не компилируются. Например, последний на этой странице, Transmission RPC Interface: https://wiki.gnome.org/Projects/Vala/JsonSample
Вот мой код:
var uri = "http://nas/tt-rss/api/";
var session = new Soup.Session ();
var message = new Soup.Message ("POST", uri);
var login = "{\"op\":\"login\",\"user\":\"USER\",\"password\":\"PASSWORD\"}";
message.set_request("", MemoryUse.COPY, login);
session.send_message (message);
stdout.printf("%s \n", (string) message.response_body.flatten ().data);
Я всегда получаю ошибку:
Argument 3: Cannot convert from `string' to `uint8[]'
Спасибо за любую помощь заранее
с уважением, Ян