Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
| Порівняння попередніх версій Попередня ревізія | Попередня ревізія | ||
|
omaeurl [2021/11/27 17:23] |
omaeurl [2023/06/17 15:38] (поточний) nightfly |
||
|---|---|---|---|
| Рядок 1: | Рядок 1: | ||
| + | ====== OmaeUrl ====== | ||
| + | Клас OmaeUrl надає рівень абстракції для роботи з HTTP запитами до віддалених хостів. Здебільшого він наслідує кумулятивні механіки [[nyanorm|NyanORM]] і намагається бути максимально на нього схожим у всіх своїх проявах. | ||
| + | |||
| + | Отже, коротко в прикладах. Наприклад, | ||
| + | |||
| + | <code php> | ||
| + | $ubillingRelease=new OmaeUrl(' | ||
| + | $latestRelease=$ubillingRelease-> | ||
| + | </ | ||
| + | |||
| + | Ну або так, якщо вам так хочеться: | ||
| + | |||
| + | <code php> | ||
| + | $ubillingRelease=new OmaeUrl(); | ||
| + | $latestRelease=$ubillingRelease-> | ||
| + | </ | ||
| + | |||
| + | Ну або хочеться дізнатися виробника обладнання з якимось MAC, за допомогою API [[https:// | ||
| + | |||
| + | <code php> | ||
| + | $apiUrl = ' | ||
| + | $mac = ' | ||
| + | $searchMac = new OmaeUrl(); | ||
| + | $vendor = $searchMac-> | ||
| + | </ | ||
| + | |||
| + | |||
| + | Коротше, | ||
| + | |||
| + | Давайте розглянемо трохи, більш наркоманський приклад взаємодії з кабінетом користувача за допомогою [[xmlagent|API XMLAgent]]? | ||
| + | |||
| + | <code php> | ||
| + | $userstatsUrl = ' | ||
| + | $userstatsApi = new OmaeUrl($userstatsUrl); | ||
| + | $agent = ' | ||
| + | $userstatsApi-> | ||
| + | //user params | ||
| + | $userLogin = ' | ||
| + | $userPassword = ' | ||
| + | |||
| + | //setting some request options | ||
| + | $userstatsApi-> | ||
| + | $userstatsApi-> | ||
| + | $userstatsApi-> | ||
| + | $userstatsApi-> | ||
| + | |||
| + | // | ||
| + | $result = $userstatsApi-> | ||
| + | |||
| + | // | ||
| + | if ($userstatsApi-> | ||
| + | $error = $userstatsApi-> | ||
| + | show_error($error[' | ||
| + | } | ||
| + | |||
| + | $requestInfo = $userstatsApi-> | ||
| + | if ($requestInfo[' | ||
| + | //something went wrong? | ||
| + | show_error(__(' | ||
| + | } else { | ||
| + | //ok, some data received | ||
| + | if (!empty($result)) { | ||
| + | $result = json_decode($result, | ||
| + | debarr($result); | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | ну власне й отримуємо на виході потрібні нам дані | ||
| + | |||
| + | < | ||
| + | Array | ||
| + | ( | ||
| + | [address] => Зловісненськ Шевченка 13/7 | ||
| + | [realname] => Василь Бухайко | ||
| + | [login] => tbjfp4mb | ||
| + | [cash] => 0 | ||
| + | [ip] => 172.30.0.9 | ||
| + | [phone] => 90932 | ||
| + | [mobile] => 925219854 | ||
| + | [email] => tbjfp4mb@ourisp.ua | ||
| + | [credit] => 0 | ||
| + | [creditexpire] => No | ||
| + | [payid] => 2887647241 | ||
| + | [contract] => 80362 | ||
| + | [tariff] => Unlim-5 | ||
| + | [tariffnm] => No | ||
| + | [traffdownload] => 0 b | ||
| + | [traffupload] => 0 b | ||
| + | [trafftotal] => 0 b | ||
| + | [accountstate] => active | ||
| + | [accountexpire] => 4 | ||
| + | [currency] => UAH | ||
| + | [version] => 1 | ||
| + | ) | ||
| + | </ | ||
| + | |||
| + | Власне щодо відсилання POST даних, то вони нічим не відрізняються від GET у контексті роботи з OmaeUrl: | ||
| + | |||
| + | <code php> | ||
| + | $userstatsApi-> | ||
| + | $userstatsApi-> | ||
| + | </ | ||
| + | |||
| + | Слід також мати на увазі, що після здійснення response() всі структури GET/ | ||
| + | |||
| + | <code php> | ||
| + | $userstatsUrl = ' | ||
| + | $userstatsApi = new OmaeUrl($userstatsUrl); | ||
| + | | ||
| + | //setting some request options | ||
| + | $userstatsApi-> | ||
| + | $userstatsApi-> | ||
| + | | ||
| + | // | ||
| + | $userLogin = ' | ||
| + | $userPassword = ' | ||
| + | $userstatsApi-> | ||
| + | $userstatsApi-> | ||
| + | $userData = $userstatsApi-> | ||
| + | | ||
| + | $userLogin = ' | ||
| + | $userPassword = ' | ||
| + | $userstatsApi-> | ||
| + | $userstatsApi-> | ||
| + | $anotherUserData = $userstatsApi-> | ||
| + | |||
| + | debarr(json_decode($userData, | ||
| + | debarr(json_decode($anotherUserData, | ||
| + | </ | ||
| + | |||
| + | |||
| + | Детальніше про методи і можливості OmaeUrl можна дізнатись, | ||