Watch-IP مقابل IPinfo
يقدّم كل من IPinfo و Watch-IP نقطة نهاية للدُفعات لحلّ عدة عناوين IP مُدخَلة في استدعاء واحد، لكن بحدود دُفعات وأشكال استجابة وأسعار مختلفة. جرى التحقق من المعلومات أدناه مباشرة من موقع IPinfo نفسه؛ لا يُعلن أي من الجدولين عن فائز شامل.
جرى التحقق من معلومات IPinfo في هذه الصفحة مباشرة مقابل الصفحات المدرجة تحت المصادر بتاريخ 8 سبتمبر 2026، وقد تتغيّر دون إشعار — أعد التحقق من موقع المزوّد قبل الاعتماد على رقم محدد. تأتي معلومات Watch-IP من كود هذا المستودع وصفحة /pricing الحالية. أبلغ عن أي معلومة تبدو قديمة عبر /contact.
ما الذي تقارنه هذه الصفحة
تقارن هذه الصفحة البحث من جانب الخادم عن عنوان IP مُدخَل — واجهة IPinfo الأساسية ونقطة نهاية الدُفعات مقابل GET /v1/lookup/{ip} و POST /v1/lookup الخاصين بـ Watch-IP (مفتاح سري، قاعدة بيانات جهة خارجية لتحديد المواقع الجغرافية). لا تقارن منتج تحديد الموقع الجغرافي للزائر عبر المتصفح المنفصل الخاص بـ Watch-IP (GET /v1/geo، مفتاح قابل للنشر، مقيَّد بالمصدر)، الذي ليس له مكافئ في هذه المقارنة.
مقارنة الميزات
| Watch-IP | IPinfo | |
|---|---|---|
| المصادقة | مفتاح سري عبر ترويسة Authorization: Bearer. | رمز مميز عبر معامل الاستعلام ?token=.وثائق واجهة الدُفعات في IPinfo · 2026-09-08 |
| الخطة المجانية | لا توجد للبحث. تبدأ الخطط من 19 دولارًا شهريًا مقابل 5000 عملية بحث. (يملك منتج تحديد الموقع الجغرافي للزائر المنفصل الخاص بـ Watch-IP خطته المجانية الخاصة لاستخدام المتصفح، وليس للبحث عن IP عشوائي.) | IPinfo Lite: 0 دولار شهريًا، ويوصَف بأنه طلبات غير محدودة، وتحديد موقع على مستوى الدولة فقط، إضافة إلى 50 عملية بحث عبر لوحة التحكم على الويب.أسعار IPinfo · 2026-09-08 |
| أول خطة مدفوعة | 19 دولارًا شهريًا، 5000 عملية بحث شهريًا، 20 طلبًا/دقيقة. | IPinfo Core: 26 دولارًا شهريًا، 150000 طلب شهريًا؛ لم يُفصَّل حد المعدل لكل خطة في صفحة الأسعار.أسعار IPinfo · 2026-09-08 |
| حجم الدُفعة لكل استدعاء | حتى 100 عنوان IP لكل استدعاء لـ POST /v1/lookup. | حتى 1000 عنوان IP لكل استدعاء لـ POST /batch.وثائق واجهة الدُفعات في IPinfo · 2026-09-08 |
| شكل استجابة الدُفعة | مصفوفة «results»، بنفس ترتيب مصفوفة «ips» المُرسَلة. | كائن JSON مُفهرَس بعنوان IP؛ ترتيب الاستجابة غير موثَّق كأنه محفوظ.وثائق واجهة الدُفعات في IPinfo · 2026-09-08 |
| حقول الاستجابة (بحث فردي) | ip, country, region (رمز التقسيم الفرعي), city, postalCode (فارغ دائمًا من هذا المصدر), latitude, longitude, continent, timezone (فارغ دائمًا من هذا المصدر), found. | خطة Core: city, region, region_code, country, country_code, continent, continent_code, latitude, longitude, timezone, postal_code؛ حقول ASN/المؤسسة موثَّقة بشكل منفصل للخطط الأعلى.بيانات تحديد الموقع الجغرافي لواجهة IPinfo Core · 2026-09-08 |
الترحيل من IPinfo
تتوفر نسخة قابلة للتشغيل من كل خطوة أدناه في examples/migrate-from-ipinfo.mjs ضمن مستودع Watch-IP على GitHub — تُجري كلا الطلبين وتطبع كلا الردَّين لتقارنهما بنفسك.
1. استبدال طلب الدُفعة
ينتقل الرمز المميز من معامل استعلام إلى ترويسة Authorization، ويتغيّر جسم الطلب من مصفوفة مجرَّدة إلى كائن بمفتاح «ips».
IPinfo
curl -X POST "https://api.ipinfo.io/batch?token=$IPINFO_TOKEN" \
-H "Content-Type: application/json" \
-d '["203.0.113.1", "2001:db8::1"]'Watch-IP
curl https://api.watch-ip.com/v1/lookup \
-H "Authorization: Bearer YOUR_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{"ips": ["203.0.113.1", "2001:db8::1"]}'2. إعادة بناء خريطة مُفهرَسة بعنوان IP إذا كان الكود يتوقع واحدة
استجابة الدُفعة في IPinfo هي كائن تفهرسه مباشرة بعنوان IP. يعيد Watch-IP بدلًا من ذلك مصفوفة مرتَّبة — اربطها بمصفوفة «ips» الخاصة بالطلب للحصول على شكل بحث بعنوان IP مماثل قد يتوقعه كودك الحالي.
قراءة استجابة IPinfo
const city = data["203.0.113.1"].city;قراءة استجابة Watch-IP
const map = Object.fromEntries(ips.map((ip, i) => [ip, results[i]]));
const city = map["203.0.113.1"].city;3. تقسيم الدُفعات الأكبر
يجب تقسيم أي مهمة تقترب من حد IPinfo البالغ 1000 عنوان IP إلى عدة استدعاءات متتالية للالتزام بحد Watch-IP البالغ 100 عنوان IP — توقّع نحو عشرة أضعاف عدد الطلبات لنفس الحجم الإجمالي.
استدعاء واحد لـ IPinfo
await fromIpinfoBatch(thousandIps);عدة استدعاءات لـ Watch-IP
for (let i = 0; i < ips.length; i += 100) {
await fromWatchIpBatch(ips.slice(i, i + 100));
}راجع examples/migrate-from-ipinfo.mjs في مستودع Watch-IP الموحّد على GitHub للحصول على النسخة القابلة للتشغيل من هذا الترحيل.
الأسئلة الشائعة
لماذا حد الدُفعة في Watch-IP أصغر من IPinfo؟
توثّق IPinfo حدًا يبلغ 1000 عنوان IP لكل استدعاء دُفعة؛ أما حد Watch-IP فهو 100. إذا كنت تجمّع بانتظام أكثر من 100 عنوان IP لكل مهمة، خطّط لعدة استدعاءات متتالية لـ POST /v1/lookup بدلًا من استدعاء واحد كبير.
هل يقدّم Watch-IP خطة مجانية مثل IPinfo Lite؟
لا، اعتبارًا من 8 سبتمبر 2026. يقدّم IPinfo Lite طلبات غير محدودة على مستوى الدولة مجانًا؛ لا يملك منتج البحث عن IP الخاص بـ Watch-IP خطة مجانية. يملك منتج تحديد الموقع الجغرافي للزائر المنفصل الخاص بـ Watch-IP خطته المجانية الخاصة لاستخدام المتصفح، وهو منتج ونوع مفتاح مختلفان عن البحث عن IP عشوائي.
هل يُحفَظ ترتيب النتائج في استجابة الدُفعة؟
يعيد POST /v1/lookup الخاص بـ Watch-IP دائمًا مصفوفة «results» بنفس ترتيب مصفوفة «ips» المُرسَلة. استجابة الدُفعة في IPinfo هي كائن JSON مُفهرَس بعنوان IP وليست مصفوفة مرتَّبة، لذا يجب كتابة الكود الذي يقرأ أيًا من الاستجابتين وفقًا لشكلها الفعلي، دون افتراض أنهما قابلتان للتبادل.
المصادر
- IPinfo — الأسعار — accessed 2026-09-08
- IPinfo — واجهة الدُفعات (batch enrichment) — accessed 2026-09-08
- IPinfo — بيانات تحديد الموقع الجغرافي لواجهة Core — accessed 2026-09-08
صفحات ذات صلة
- البحث المجمّع عن عناوين IPحلِّل ما يصل إلى 100 عنوان IP مُقدَّم في طلب واحد من الخلفية.
- مرجع POST /v1/lookupمرجع كامل بالحقول لنقطة نهاية البحث المجمّع عن عناوين IP.
- التسعيرالخطط والحدود لواجهتَي برمجة تطبيقات الزائر والبحث.
- دقة تحديد الموقع الجغرافي لعنوان IPما يمكن لتحديد الموقع الجغرافي لعنوان IP إخبارك به وما لا يمكنه، وكيفية تقييمه بنفسك.