меню

Что такое веб-сервис?

Веб-служба, веб-сервис (англ. web service) — идентифицируемая уникальным веб-адресом (URL-адресом) программная система со стандартизированными интерфейсами, а также HTML-документ сайта, отображаемый браузером пользователя. (Материал из Википедии)

Иными словами Web-сервис (служба) – программа, которая организовывает взаимодействие между сайтами. Информация с одного портала передается на другой.

Например, есть авиакомпания. У нее много рейсов, соответственно, много билетов. Информацию через веб-службу она передает сайту-агрегатору тур-путешествий. Пользователь, который заходит на агрегатор, сможет прямо там купить билеты этой авиакомпании.

Другой пример веб-сервисов — это сайт отслеживания погоды, который содержит сведения о метеоусловиях в конкретном городе или по стране в целом. Данная информация также часто используется сторонними приложениями.

Информация в интернете разнородна. Сайты управляются разными системами. используются разные протоколы передачи и шифрования. Веб-сервисы упрощают обмен информацией между разными площадками.

В этой статье покажем Вам, как создать простой веб-сервис на базе Simple Object Access Protocol (SOAP).

Что такое SOAP?

Simple Object Access Protocol

SOAP (от англ. Simple Object Access Protocol — простой протокол доступа к объектам; вплоть до спецификации 1.2) — протокол обмена структурированными сообщениями в распределённой вычислительной среде. Первоначально SOAP предназначался в основном для реализации удалённого вызова процедур (RPC). Сейчас протокол используется для обмена произвольными сообщениями в формате XML, а не только для вызова процедур. Официальная спецификация последней версии 1.2 протокола никак не расшифровывает название SOAP. SOAP является расширением протокола XML-RPC.

SOAP может использоваться с любым протоколом прикладного уровня: SMTP, FTP, HTTP, HTTPS и др. Однако его взаимодействие с каждым из этих протоколов имеет свои особенности, которые должны быть определены отдельно. Чаще всего SOAP используется поверх HTTP.

SOAP является одним из стандартов, на которых базируются технологии веб-служб.

Перейдем от теории к практике.

Soap Server: SimpleServer.php

    

// Simple Method get 1 parameter and return with Hello
function AddHello($name)
{
     return "Hello $name";
}

// Create SoapServer object using WSDL file.
// For the simplicity, our SoapServer is set to operate in non-WSDL mode. So we do not need a WSDL file
$server = new SoapServer(null, array('uri'=>'http://localhost/hello'));

// Add AddHello() function to the SoapServer using addFunction().
$server->addFunction("AddHello");

// To process the request, call handle() method of SoapServer.
$server->handle();

     

Soap Client для общения с сервером: SimpleClient.php

    

include "nusoap.php"; //Soap Library.

try {
    // Create a soap client using SoapClient class
    // Set the first parameter as null, because we are operating in non-WSDL mode.
    // Pass array containing url and uri of the soap server as second parameter.
    $client = new soapclient(null, array(
            'location' => "http://localhost/hello/HelloServer.php",
            'uri' => "http://localhost/hello"));

            // Read request parameter
            $param = $_POST['name'];
            
            // Invoke AddHello() method of the soap server (HelloServer)
            $result = $client->AddHello($param);
            echo $result; // Process the the result
}
    catch(SoapFault $ex) {
    $ex->getMessage();
}

     

Soap View для взаимодействия с пользователем: SimpleView.php

    

echo "<h2>Welcome to PHP Web Service</h2>";
echo "<form action='SimpleClient.php' method='POST'/>";
echo "<input name='name' /><br/>";
echo "<input type='Submit' name='submit' value='Send'/>";
echo "</form>";

     

Возможно, вам будет интересно

Как получить HTTP заголовки сервера?

Привычная схема клиент-серверного взаимодействия, это когда клиент – отправляет запрос, сервер возвращает ответ. Давайте рассмотрим пример, как можно просмотреть возвращаемые HTTP заголовки сервера, при запросе.

Форма с отправкой информации через Ajax в Telegram

В этой статье мы хотим Вам показать способ работы с формой, которую используют многие разработчики для своих проектов. Это форма работает на HTML/CSS/JavaScript/PHP используя технологию Ajax и позволяет отправлять информацию в виде сообщения в группу Telegram.

Создание ZIP-архива на PHP

Создание ZIP-архивов на PHP тема интересна большому числу людей, ведь ZIP-архивирование на PHP весьма популярная тема. И в этой статье покажем пример, как создаётся ZIP-архив через PHP-скрипт.

Загрузка курса валют с сайта ЦентроБанка

В сети много статей по поводу загрузки курса валют с сайта ЦБ. Мы решили поделится еще одним простым способом. Источником информации об официальном курсе валюты служит сайт Центробанка Российской Федерации.

Оформление заявки

Документы на создание сайта

Изучите наше коммерческое предложение, заполните БРИФ и отправьте его на почту maxidebox@list.ru. Изучив все пожелания из БРИФ-а, обратным ответом оповестим Вас по стоимости разработке, ответим на вопросы.

КП на создание сайта Коммерческое предложение на созданеи сайта

Мы берем на себя ответственность за все стадии работы и полностью избавляем клиентов от забот и необходимости вникать в тонкости.

Скачать БРИФ (акета) на создание сайта Скачать БРИФ (акета) на создание сайта

Зополните у БРИФ-а все необходимые поля. Сделайте краткое описание к каждому из пунктов анкеты, привидите примеры в соответсвующий пунктах - это позволит лучше понять Ваши ожидания и требования к сайту