Писал программу, и в ней нужно было реализовать отправку постов в блог. В голову пришло написать на php “сервер”, который бы и реализовал запись сообщений в блог, а клиент написать на C#.Net. Но вспомнил, что у WordPress есть такая интересная штука как XML-RPC, т.е. “всё уже украдено написано до нас”, остаётся только правильно отправить на него информацию.
Можно отправлять POST запросы, через обычные функции передачи HTTP данных(HttpWebRequest, HttpWebResponse), предварительно сформировав XML запрос.
А можно через специальную библиотеку xml-rpc.net. На ней я и реализовал.
На сайте скачал примеры и саму библиотеку. Но как всегда примеры были не совсем те, что мне нужны, пришлось поискать ещё. Наткнулся на интересный сайт xmlrpcnet.wordpress.com на котором было предложено изменения другого класса для работы с этой библиотекой. Этот класс я скачал на www.orbifold.net и немного допилил.
Так ладно, теперь небольшой пример, как написать Пост в WordPress через XML-RPC на .NET
// Авторизация WP wp = new WP("http://site.com/xmlrpc.php", "admin", "password"); // Формируем запрос. Через структуру, которая описана в производном классе над библиотекой. Post newPost = new Post(){title = "Заголовок", description = "Сообщение"}; // Посылаем и получаем ответ, под каким номером значиться пост string newPostId = wp.NewPost(newPost, true); Console.WriteLine(string.Format("ID={0}\n", newPostId));
Если нужно передать другие параметры поста(время, категории и т.д.) то посмотрите описание структуры Post. В архиве прикрепляю: — саму библиотеку CookComputing.XmlRpcV2.dll. — класс orbifold.net.cs скаченный с сайта orbifold.net. Кстати там есть другие примеры использования.
— допиленную версию этого класса WordPressXmlRpc.cs и пример работы с ним main.cs.
WordPress XmlRpc (51.6 Кб, 686 скачиваний)
ps: кстати, по работе XML-RPC в Delphi можно почитать на блоге webdelphi.ru. На котором, кроме этого, есть ещё куча интересных примеров, если руки дойдут я возможно некоторые перепишу на C# ради интереса.
psps: Если пошла уж такая тема про Дельфи блоги, то мне ещё очень понравился Дельфи блог Димаса посвящённый парсерам. Тоже давольно много интересного.