Перейти к контенту

Weblogs.Ping


SfinkS

Рекомендуемые сообщения

В общем надо сделать XML-RPC уведомления на определенный адрес о создании новой записи в каком-либо блоге по протоколу Weblogs.Ping.

Замучался уже искать примеры, нифига ничего не понятно, XML для меня темный лес )

Может кто натолкнет на мысль, с чего хотя бы начать...

Описание протокола тут

Ссылка на комментарий
Поделиться на других сайтах

В чем проблема?

 

Используем сокеты в PHP. Создаем сокет с http://rpc.weblogs.com/RPC2

 

Шлем в него POST запрос при обновлении блога:

<?xml version="1.0"?>

<methodCall>

<methodName>weblogUpdates.ping</methodName>

<params>

<param>

<value>Имя блога</value>

</param>

<param>

<value>http://myforum.ru/blog/vasya/index.php</value>

</param>

</params>

</methodCall>

 

После запроса читаем ответ от сервера:

<?xml version="1.0"?>

<methodResponse>

 

<params>

<param>

<value>

<struct>

<member>

<name>flerror</name>

<value>

<boolean>0</boolean>

 

</value>

</member>

<member>

<name>message</name>

<value>Thanks for the ping.</value>

</member>

</struct>

 

</value>

</param>

</params>

</methodResponse>

 

Что означает что пинг прошел, ждите обновлений.

 

Здесь http://weblogs.com/api.html полное описание того что может вернуть сервер, а именно ошибки.

 

 

Можно тоже сделать но с использованием CURL модуля для PHP.

 

Задача сводится лишь к разбору ответа сервера, это можно попробовать сделать стандартным классом XML из IP.B kernel (class_xml.php), можно покурить class_xml_rpc.php он предназначен именно для парсинга ответов и составления запросов.

Ссылка на комментарий
Поделиться на других сайтах

GiV, создать сокет это примерно так?

fsockopen("http://rpc.weblogs.com/RPC2", 80, $errno, $errstr, 30) ?

 

А каким образом отсылать POST-запрос? Как из формы передать я понимаю, а тут? :D

Вот пример работы с сокетами и отправки данных методом POST. А как сделать то же самое с XML?

 

П.С. Зачем разбирать ответ от сервера? Я же отошлю запрос веб-сервису и все. Т.е. уведомлю о произошедшем действии каком-то. А ответ меня не интересует.

Или я что-то недопонимаю ;)

Ссылка на комментарий
Поделиться на других сайтах

А что XML это какая-то магия?

 

Считай XML просто текстом (строкой) и работай так же.

 

http://phpclub.ru/detail/article/http_request#part_3 - описание метода POST.

 

 

Ответ от сервера разбирать надо хотя бы за тем, что бы понять что ты все нормально сделал. А то будешь слать, а там интерфейс поменялся, и прекратит твой мод работать, но ты об этом узнаешь через неделю, а то и месяц.

Ссылка на комментарий
Поделиться на других сайтах

  • 1 год спустя...

Здравствуйте!

 

Мне тоже надо сделать пинг-уведомления по протоколу Weblogs.Ping. Объясните, пожалуйста, чуть подробнее - нужна ли какая-то таблица или поля в базе для этого, где именно должна находиться функция, отправляющая пинги и где после искать ответ сервера.

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.