Чтобы выполнить трекбэк пинг, клиент посылает серверу (определяемому Trackback Ping URL-ом) стандартный HTTP POST запрос соответствующего вида, а в качестве ответа получает короткое XML-сообщение. В запросе обязательно должен присутствовать “Content-Type” HTML заголовок со значением application/x-www-form-urlencoded и “charset” атрибутом, определяющим кодировку остального содержимого запроса. Например, для данного сайта этот заголовок посылается в следующем виде:
Content-Type: application/x-www-form-urlencoded; charset=utf-8
Основная часть запроса состоит из нескольких параметров, из которых обязательно должен присутствовать только один (url), остальные же носят условный характер:
title - заголовок некоторой части содержимого сайта, для которой инициируется трекбэк пинг. excerpt - некоторая выдержка или краткое содержание информации, соответствующей данному трекбэк пингу. url - постоянный URL (permalink) для части информационного содержимого сайта, соответствующей данному трекбэк пингу. blog_name - имя сайта (блога), инициировавшего трекбэк пинг.
Например,
POST http://www.webtricks.ru/wp-trackback.php?p=20 Content-Type: application/x-www-form-urlencoded; charset=utf-8 title=My+topic&url=http://www.my_site.ru/&blog_name=My+blog
В случае успеха сервер должен ответить следующим XML-сообщением:
<?xml version="1.0" encoding="utf-8"?> <response> <error>0</error> </response>В случае, если трекбэк пинг привел к ошибке, сервер обязан отправить XML-сообщение следующего вида:
<?xml version="1.0" encoding="utf-8"?> <response> <error>1</error> <message>Соответствующее сообщение об ошибке</message> </response>
Хорошим примером реализации клиентской и серверной части для трекбэк взаимодействия может считаться соответствующая часть кода такого широко распространенного блоговского движка, коим является Wordpress.
Описываемая технология была изобретена компанией Six Apart, на сайте которой может быть найдена различная дополнительная информация, касающаяся Trackback.