Как да получим информация за домейн , чрез 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 сървъра, който извършва услугата

- Път до директорията на сървъра

- Име на услугата (уникално за всяка услуга)

- Параметри на услугата (в случая името на домейна)



Резултатът е във вид на масив, като елементите са следните:

1. Статут на изпълнението на заявката
2. Резултат



В случая ни е необходим втория елемент на масива.

Резултатът извежда данните на дадения домейн.



Интересно

За разлика от други услуги, Сървъра предлага много добра поддръжка за имената в .bg областта.


взето от php-bg.org

/ Трябва да сте регистриран за да напишете коментар /