Как да получим информация за домейн , чрез XMLRPC и РНР
Тази статия ще ви помогне в използването на XMLRPC в един конкретен пример.
Теория
XML-RPC
е
протокол за отдалечено извикване на процедури, който използва HTTP
за транспорт, а тялото на съобщението е в XML
формат. Накратко казано, това е POST
заявка
с XML
тяло
Ето
и малък пример за горното:
Заявка
XML
<?xml
version=”1.0”?>
<methodCall>
<methodName>spisanie.getrank</methodName>
<params>
<param>
<value><string>http://spisanie.com</string></valie>
</param>
</params.
</methodCall>
Отговор
XML
<?xml
version=”1.0”?>
<methodResponse>
<params>
<param>
<value><string>PageRank:
5</string></valie>
</param>
</params>
</methodResponse>
Настройка
на системата.
Има
много пакети за РНР, но аз предпочитам един, които съм направил с малка
модификация на пакета на Кейт Девънс. Модифицирания пакет, заедно с кода на тази
статия можете да свалите от тук:
http://spisanie.com/downloads.php
(намира
се в секция РНР)
Инсталация
Нямате
нужда от нищо друго, само разархивирайте пакета в директория на сървъра
си.-
примерно
XML.
Трябва
да се получи следната структура:
service.php
index.php
service.php
е
модифицирания файл, който ще си комуникира с XML-RPC
сървъра и ще обработва комуникацията от типа по-горе (само в XML) до
разбираем за обработка (е PHP
променливи).
index.php
–
e файлът
който извиква услугата за намиране на информация за името на домейна
(whois)
Код
Нека
да разгледаме код-а на index.php
<?php
require(’service.php’);
$url=”spisanie.cc“;
$s
= XMLRPC_request(”spisanie.com”, “/RPC/”, “spisanie.whois”,
array(XMLRPC_prepare($url)));
echo
“<pre>”.$s[1].”</pre>”;
?>
1.Вмъкване,
необходимият ни за обработката файл service.php
2.Задаваме стойност на
променлива, която в последствие ще подадем на функция. Стойността е името на
домейна за който искаме информация
3.Изпълняваме
заявката , чрез функцията. Заявката като XML,
можем да видим в началото на материала. Забележете, че се отнася до друга
услуга, но структурата е същата.
Функцията XMLRPC_request има следните
параметри:
- URL
на XMLRPC сървъра,
който извършва услугата
- Път
до директорията на сървъра
- Име
на услугата (уникално за всяка услуга)
- Параметри
на услугата (в случая името на домейна)
Резултатът
е във вид на масив, като елементите са следните:
- Статут
на изпълнението на заявката - Резултат
В
случая ни е необходим втория елемент на масива.
Резултатът
извежда данните на дадения домейн. Можете да видите изпълнението
тук:
Интересно
За
разлика от други услуги, Сървъра предлага много добра поддръжка за имената в
.bg
областта.
http://spisanie.com











