هذه مكتبة PHP تابعة لجهة خارجية تهدف إلى تبسيط استخدام خدمة الويب Vebra XML.
الإصدار الحالي من API هو الإصدار 9.
ملحوظة: هذه المكتبة ليست تابعة لـ Vebra بأي شكل من الأشكال.
راجع دليل المستخدم أو مخطط Vebra API الإصدار 9 لمزيد من المعلومات.
PHP 5.3+
مكتبة طلبات HTTP خفيفة الوزن من Buzz.
إذا كنت تبدأ مشروعًا جديدًا، أو إذا كان مشروعك الحالي لا يستخدم برنامج الملحن، فقم بتنزيله وتثبيته:
curl -s http://getcomposer.org/installer | php
قم بإنشاء ملف Composer.json جديد باستخدام هذه المكتبة باعتباره تبعية:
{
"require" : {
"ydd/vebra" : " *@dev "
}
}
إذا كان مشروعك يستخدم الملحن بالفعل، فقم بتحرير ملف الملحن.json في مشروعك وأضف هذه المكتبة كتبعية، كما هو موضح أعلاه.
قم بتثبيت تبعيات مشروعك باستخدام الملحن:
php composer.phar install
تتطلب أداة التحميل التلقائي للملحن في البرنامج النصي أو كود التشغيل:
<?php
require ' vendor/autoload.php ' ;
لمزيد من المعلومات حول الملحن، راجع موقع الملحن.
يجب مصادقة الطلبات المقدمة إلى خدمة الويب. في البداية، يتم ذلك باستخدام اسم المستخدم وكلمة المرور الخاصين بك وتقوم خدمة الويب بإرجاع رمز التفويض الذي يجب تخزينه واستخدامه لجميع الطلبات اللاحقة. إذا فشلت في تخزين الرمز المميز، فلن تتمكن من تقديم أي طلبات أخرى إلى خدمة الويب حتى تنتهي صلاحية رمز المصادقة المميز. رمز المصادقة صالح لمدة ساعة تقريبًا وستعيد خدمة الويب رأس 401 (غير مصرح به) إذا قمت بتقديم طلب باستخدام رمز تفويض منتهي الصلاحية. في هذه الحالة، ستقوم واجهة برمجة التطبيقات (API) بإعادة المصادقة تلقائيًا وستتلقى رمز مصادقة مميزًا جديدًا.
لتمكين هذا السلوك، تتضمن المكتبة فئة تخزين الرمز المميز الافتراضية التي ستقوم بحفظ وتحميل الرمز المميز من ملف على نظام الملفات المحلي. إذا كنت تريد تخزين الرمز المميز بشكل مختلف (على سبيل المثال في قاعدة بيانات)، فيمكنك توفير فئة تخزين الرمز المميز الخاصة بك والتي يجب أن تقوم بتنفيذ TokenStorageInterface.
لإنشاء مثيل YDDVebraTokenStorageFile، يمكنك تمرير اسم المستخدم والمسار إلى الدليل الذي تريد استخدامه لتخزين الرموز المميزة (والتي يجب أن تكون قابلة للكتابة). من أجل دعم عدة مستخدمين، يكون لكل مستخدم ملف الرمز المميز الخاص به (المشتق من تجزئة اسم المستخدم).
$tokenStorage = new YDDVebraTokenStorageFile('username', __DIR__.'/tokens/');
تُستخدم مكتبة طلبات HTTP خفيفة الوزن لإرسال طلبات HTTP إلى/إرجاع استجابات HTTP من خدمة الويب. لدى Buzz بضعة عملاء للاختيار من بينها (FileGetContents/Curl) ويمكن إضافة عملاء آخرين في المستقبل. يتعين عليك إنشاء مثيل لعميل Buzz الذي تريد استخدامه ومثيل BuzzMessageFactory (الذي تستخدمه واجهة برمجة التطبيقات لإنشاء كائن استجابة).
الآن بعد أن أصبح لدينا المعلمات والكائنات المطلوبة، يمكننا إنشاء مثيل لواجهة برمجة التطبيقات:
use YDDVebraAPI as VebraAPI;
use YDDVebraTokenStorageFile as TokenStorageFile;
use BuzzClientCurl as BuzzClientCurl;
use BuzzMessageFactoryFactory as BuzzMessageFactory;
$api = new VebraAPI(
'datafeedid',
'username',
'password',
new TokenStorageFile('username', __DIR__.'/tokens/'),
new BuzzClientCurl(),
new BuzzMessageFactory()
);
استرداد جميع الفروع (كمجموعة قابلة للتكرار من كائنات ملخص الفرع):
$branchSummaries = $api->getBranches();
قم بالتكرار على كائنات ملخص الفرع واسترجاع كائنات الفرع لكل منها:
foreach ($branchSummaries as $branchSummary) {
$branch = $api->getBranch($branchSummary->getClientId());
}
يحتوي كائن الفرع الذي تم إرجاعه على أدوات الوصول لكل خاصية من الخصائص:
echo $branch->getName();
استرداد الخصائص لفرع معين (كمجموعة قابلة للتكرار من كائنات ملخص الخاصية):
$propertySummaries = $api->getPropertyList($branch->getClientId());
قم بالتكرار على كائنات ملخص الخاصية واسترجاع كائنات الخاصية لكل منها:
foreach ($propertySummaries as $propertySummary) {
$property = $api->getProperty($branch->getClientId(), $propertySummary->getPropId());
}
يحتوي كائن الخاصية الذي تم إرجاعه على أدوات الوصول لكل خاصية:
echo $property->getAddress();
استرداد الخصائص التي تغيرت منذ تاريخ معين:
$properties = $api->getChangedProperties(new DateTime('2012-01-01'));
استرداد الملفات التي تغيرت منذ تاريخ معين:
$files = $api->getChangedFiles(new DateTime('2012-01-01'));
دامون جونز - [email protected]
ماثيو ديفيس [email protected]
تم ترخيص Vebra PHP API Wrapper بموجب ترخيص MIT - راجع ملف الترخيص للحصول على التفاصيل