واجهة JavaScript
لصفحات الطلب التي ترسل الطلب بـ fetch أو AJAX بدل إرسال نموذج.
في هذه الصفحة
افحص الطلب قبل إرساله#
استدعِ Antiro.decide() عند ضغط الزبون على زر الطلب، وأرسل token مع الطلب. قد لا يكون السكربت قد حُمِّل، فتأكد من وجوده أولاً، وأرسل الطلب في كل الأحوال، ففحص الخادم يبقى قائماً.
async function placeOrder(order) {
const check = window.Antiro
? await window.Antiro.decide({
phone: order.phone,
name: order.name,
address: order.address,
})
: { act: 'allow', token: '' };
// notice or block: the shopper saw a message
if (check.act !== 'allow') return;
await fetch('/api/orders', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
...order,
session_token: check.token,
}),
});
} ما تعيده decide#
تعيد Antiro.decide() القيمة { act, token }:
act | معناها | ما تفعله |
|---|---|---|
allow | يمكن إرسال الطلب، وتعود أيضاً عند أي فشل. | أرسل الطلب، وtoken في session_token. |
notice | طُلب من الزبون تغيير شيء من جهته. | لا ترسل، واستدعِ decide() عند الضغطة التالية. |
block | رأى الزبون رسالة الرفض. | لا ترسل. |
المرجع#
- Antiro.decide(contact) Promise
يفحص الطلب. يحمل
contactالحقولphoneوnameوaddress، وكلها اختيارية. كل استدعاء يشغّل فحصاً واحداً، والاستدعاء أثناء فحص جارٍ يتشارك جوابه.- Antiro.token() string
مرجع الطلب الحالي، لإرساله في
session_token.- Antiro.ready() Promise
يكتمل بعد محاولة السكربت فتح جلسته.
- Antiro.verdict() string
botإن حكم Antiro بأن التبويب آلي، وokإن أجاب، وإلاunknown.- Antiro.version string
إصدار السكربت.