Сервисы, входящие в комплект:
- start.asmx - стартовый сервис (Авторизация, Выход, Проверка
баланса)
- advert.asmx - все для рекламодателя (Проекты, экспорт
ссылок, поиск страниц, покупка ссылок, снятие ссылок)
- webmaster.asmx - все для владельца сайта (Сайты, экспорт
ссылок, цензура)
- catalogs.asmx - справочник MainLink (категории, списки,
константы)
- fin.asmx - финансовые отчеты (расходы / приходы)
- stat.asmx - статистика по MainLink (средние цены)
- sok.asmx - MainLink для СОКов (Сервисов по обслуживанию клиентов)
Как работает?
Коннектитесь к сервису по start.asmx, передаете Cookie (по ним авторизация и сессия)
и затем юзаете методы.
Примеры:
|
|
PHP (использует библиотеку nusoap)
$advert_url = "http://api.mainlink.ru/advert.asmx?WSDL";
$login_url = "http://api.mainlink.ru/start.asmx?WSDL";
$login = new nusoap_client($login_url, true);
$advert = new nusoap_client($advert_url, true);
$login->setUseCurl(1);
$login->call('sys_LogIn', array('Login' => 'qqqq', 'Password' => 'qqqqq'));
$balance = $login->call('sys_Balance', array());
$cookies = $login->getCookies();
foreach ($cookies as $cookie) {
$advert->setCookie($cookie['name'], $cookie['value']);
}
$res = $advert->call('mlapi_AddProject', array());
Глюк: при получении xml-кода, содержащего символы &, в процессе парсинга они удаляются. Глюк возникает при связке nusoap 0.73 + PHP 5
ASP.NET (2.0)
namespace hosttest
{
public class test
{
private CookieContainer cookie;
public double test()
{
cookie = new CookieContainer();
MainLink.mainlinkapi r = new MainLink.mainlinkapi();
// Не забудьте создать Web-Reference на вышеуказанные сервисы (которые планируете использовать)
r.CookieContainer = cookie;
r.ml_LogIn("login", "password");
return r.mlapi_GetBalance();
}
}
}