t e l i z e
_______________________
______ /_______
\ \ ___ // /
__ ____ __ / _____/ / ____
___/ ____/ _//____/ ______/_____ /__/ _//____
\__ ____ __/ __ __ ____ ____ __/ __///
/ _ |/ _ / / /_/ |/ _
\ ___/___ /____/_______/ ___/___ /
<0(--- __/ -h7- ______/ . __/ ---- ______/ --(0>
. /. .
. // /
______\ //______/
Y
Telize عبارة عن واجهة برمجة تطبيقات REST مدمجة في Go مما يسمح بالحصول على عنوان IP للزائر والاستعلام عن معلومات الموقع من أي عنوان IP. يقوم بإخراج بيانات تحديد الموقع الجغرافي IP المشفرة بـ JSON، ويدعم كلاً من JSON وJSONP.
يتم تنفيذ عمليات تحديد الموقع الجغرافي باستخدام MaxMind DB Reader for Go الذي يقوم بتخزين قاعدة البيانات مؤقتًا في ذاكرة الوصول العشوائي (RAM). لذلك، لدى Telize حد أدنى من النفقات العامة ويجب أن تكون سريعة للغاية.
يتطلب Telize مكتبات Go التالية:
يتطلب Telize قواعد بيانات GeoLite2 المجانية من MaxMind.
سوف تبحث Telize عن قواعد بيانات GeoLite2 City
و GeoLite2 ASN
في /var/db/GeoIP
بشكل افتراضي.
قم بالإنشاء والتثبيت باستخدام أداة go
، وسيتم جلب جميع التبعيات وتجميعها تلقائيًا:
go build
go install telize
افتراضيًا، سيتم ربط Telize بالمضيف المحلي، المنفذ 8080.
USAGE:
-host string
Set the server host (default "127.0.0.1")
-port string
Set the server port (default "8080")
-version
Display version
تم تضمين Telize مع ملف وحدة systemd، راجع: systemd/telize.service
انسخ ملف systemd/telize.service
في /etc/systemd/system
وملف Telize الثنائي في /usr/local/sbin
.
لتشغيل البرنامج الخفي عند بدء التشغيل، قم بتشغيل:
systemctl enable telize
للحصول على وثائق API كاملة وأمثلة الاستخدام، يرجى مراجعة موقع المشروع.
يدعم Telize عمليات الاسترجاعات JSONP.
سيؤدي استدعاء نقطة نهاية API بدون أي معلمة إلى إرجاع عنوان IP للزائر:
سيؤدي إلحاق عنوان IP كمعلمة إلى إرجاع معلومات الموقع للعنوان المحدد:
عندما يتم إدخال إدخال مستخدم غير صحيح، يقوم الخادم بإرجاع خطأ HTTP 400 (طلب غير صالح)، بالإضافة إلى رسالة خطأ بترميز JSON.
يعالج Telize رأس HTTP "X-Forwarded-For" إذا كان موجودًا، ويقوم بإرجاع البيانات الخاصة بعنوان IP الأول من القائمة.
تم تمكين CORS في Telize بشكل افتراضي مع السياسة التالية:
Access-Control-Allow-Origin: *
منذ الإصدار 3.0.0، يقوم Telize الآن بحساب إزاحات المنطقة الزمنية (إزاحة التوقيت العالمي الموحد) ديناميكيًا وإضافة البيانات إلى الحمولة.
يتم إصدار Telize بموجب ترخيص BSD 2-Clause. راجع ملف LICENSE
للحصول على التفاصيل.
تم تطوير Telize بواسطة فريدريك كامبوس.
الصفحة الرئيسية للمشروع: https://www.telize.com
أحدث إصدار من كرة القطران: https://www.statdns.com/telize/telize-3.1.1.tar.gz
جيثب: https://github.com/fcambus/telize