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

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. Объясните, пожалуйста, чуть подробнее - нужна ли какая-то таблица или поля в базе для этого, где именно должна находиться функция, отправляющая пинги и где после искать ответ сервера.

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

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

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

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

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

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

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

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

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