سؤال

أقوم بتطوير واجهة برمجة تطبيقات مريحة للعميل. المشكلة هي أنه يستخدم لغة غامضة إلى حد ما تسمى Clarion. إنها ملكية ومغلقة ، والمستندات غير متوفرة عبر الإنترنت بحرية.

كلما ناقشنا تمرير البيانات من رمزه إلى الألغام ، والعودة مرة أخرى ، يبدأ في الحديث عن "تحميل ملفات FTP" و SQL مباشرة إلى الخادم. وغني عن القول أن هذه الأفكار تعيد رؤى الأيام الخوالي السيئة. لقد قمت ببعض googling ، ولا يمكنني العثور على أي دليل على أن هذه اللغة قادرة على إنشاء طلبات نشر HTTP على الإطلاق ، ناهيك عن استخدام تشفير SSL لحمايتها من عيون المتطفلين.

أبحث عن نصيحة محددة بما يكفي بحيث يمكنني توجيهه من خلال تنفيذ نهاية الصفقة. أريد على وجه التحديد تجنب محاولة تمرير طلبات XML كملفات عبر FTP ، أو عن طريق كتابتها إلى القرص والاتصال بالبرنامج النصي. يجب أن يذهب دون القول ، لكنني أيضًا لست مهتمًا بتشغيل رمز خادم Clarion الخاص أو DLLs على الخادم الخاص بي.

هل كلاريون قادر على توليد طلبات البريد؟ هل من الصعب توليد XML في Clarion؟ هل هناك تنسيق أبسط/أسهل في استخدام موكلي قد يكون لدى موكلي أكثر؟ لا شيء من البيانات أكثر تعقيدًا من أزواج المفاتيح/القيمة.

أقوم بترميز Python ، لكن يمكنني إلغاء تمييز أي تنسيق معقول للبيانات إذا كان هناك طريقة ما للحصول على البيانات إلى الخادم الخاص بي.

هل كانت مفيدة؟

المحلول

أشعر بألمك. يمكن أن يكون التواصل بين الأنظمة ألمًا كبيرًا. على الرغم من أن الأخبار السارة هي أن Clarion يمكنه القيام بـ TCP/IP ، و XML (مع القليل من المساعدة) ، لذلك لا يوجد شيء يجب أن يعيق زميلك في Clarion.

في اهتمامات الإفصاح الكامل ، يجب أن أشير إلى أنني متحيز هنا - أنا على وشك أن أوصي بأن يستخدم Guy Clarion الأدوات التي قمت بإنشائها - ومع ذلك ، فهناك الآلاف من مبرمجي Clarion هناك باستخدامها ، وهي توفر الإجابة على سؤالك ، لذا أرجوك سامحني. تجاهل إذا أردت.

في Clarion ، هناك بعض الأدوات التي تجعل اتصالات TCP/IP سهلة والتي تتيح استخدام SSL. الشخص الذي أصنعه يسمى nettalk (http://www.capesoft.com/accessories/netsp.htm).

هناك أيضًا دعم XML داخل صندوق Clarion ، على الرغم من أنه مرهق بشكل غير ضروري ، لذا يوجد على الأقل 2 منتجات XML التي يمكنه استخدامها - IQXML (وهي مجانية) و XFILES (http://www.capesoft.com/accessories/xfilessp.htm) وهو مصمم ليكون سريعًا للغاية.

باستخدام NetTalk & Xfiles معًا ، من التافهة إنشاء خوادم أو عملاء صابون. (أو خوادم HTTP العادية والعملاء كما تفضل.) هناك الكثير من الأشخاص الذين يقومون بذلك فقط ، لذلك لا يوجد أي عذر على الإطلاق لاستخدام الملفات المشتركة ، أو طلبات FTP'ing حولها. أوصيك برفق صديقك Clarion في الاتجاه الصحيح.

إذا كنت ترغب في تشغيل هذا السؤال عبر مطوري Clarion الآخرون ، فحاول http://faq.clarionmag.com/ (الذي يستخدم محرك StackOverFlow.) هناك أيضًا الكثير من المبرمجين النشطين على بروتوكول NNTP (News) في news.softvelocity.com (comp.lang.clarion وغيرها).

هتاف بروس

نصائح أخرى

بدلاً من محاولة تحقيق المزيد في هذه اللغة الغامضة ، سأذهب مع النهج الذي ألمح إليه: استخدام نظام الملفات كآلية يدويًا.

اطلب من ملفات إخراج الكود إلى مجلد معين ؛ بعد ذلك ، احصل على خفي ، مكتوب بلغة "طبيعية" ، راقب هذا المجلد بانتظام (وظيفة cron ، إلخ). عندما يظهر ملف جديد ، قم بتحميله من خلال HTTPS / يعني "العادي" الأخرى لخادمك الآخر للقيام بالمهمة.

يتبع هذا النهج فلسفة "توطين الهراء" - إذا لم تتمكن من التخلص من الهراء ، على الأقل تأكد من أن "الحدود" محددة جيدًا.

المعلومة يجب ان تكون مجانية. قد تكون اللغة ملكية ومغلقة ، لكن الوثائق هو تم النشر على الإنترنت:

http://www.softvelocity.com/clarion/pdf/languagereferencemanual.pdf

يبدو وكأنه تقرير تقارير Windows 3.1 القديم الذي يولد لغة تتمتع بالقدرة على التحدث عن DDE/OLE (!) ، ولكن يبدو أنه ليس لديه ميزات اتصال خارجي غير ذلك.

لذلك لا ، لا يمكن لـ Clarion القيام بطلبات البريد (إلا من خلال محادثة التحكم المخصصة في طرف ثالث / محادثة DDE). قد يكون استخدام نظام الملفات وسيلة آمنة للمضي قدماً: إنه يبقي العميل في منطقة مألوفة ، وهو الأسهل في تصحيح. ومع ذلك ، إذا كانت الاتصالات ذات الاتجاهين مطلوبًا ، فقد تحتاج إلى تفجير الغبار من الكتيبات والذهاب إلى طريق DDE. يعتمد الأمر حقًا على المتطلبات الدقيقة (على سبيل المثال هل دفعة البرنامج أو التفاعلية؟) ، ولكن الصفحة 935 (التذييل أ) في دليل صفحة 1158 هو المكان الذي تبدأ فيه البحث!

لقد جئت في وقت متأخر جدًا من هذا المنشور ، لأنني لم أحصل إلا على حساب Overflow Account اليوم. ومع ذلك ، أود التعليق على إجابة Bruces.

يدير Bruce إضافة Clarion من طرف ثالث على شركة Maker وسيقترح دائمًا استخدام منتجاتها. altough إنهم بخير حقًا عمل جيد جدًا ، لا يسعني المساعدة في الإشارة إلى ذلك هناك الأدوات القياسية المفتوحة لحوالي أي شيء يجب القيام به.

على سبيل المثال ، يمكن للمبرمج استخدام "حليقة" http://curl.haxx.se/ للتواصل مع خادم الويب من البرنامج. ليس فقط برنامج Clarion ، ولكن أي برنامج. بصرف النظر عن ذلك ، تتمتع Clarion بإمكانية الوصول إلى جميع واجهة برمجة تطبيقات Windows ، وهي مجرد مسألة كتابة الرمز ، لذلك ، Sockets و HTTP و MCI وأي شيء في متناول أي مبرمج.

هل تحتاج إلى إرسال بريد إلكتروني من برنامج يبدو أنه لا يمكنه الوصول إلى وظائف SMTP؟ استخدم "Blat"! - Blat.net

هل تريد تنزيل بعض الملفات من موقع ويب؟ wget - gnu.org/software/wget

هذه كلها واجهات سطر الأوامر. وأقترح على من لا يعرف معنى "الواجهة" ، لإلقاء نظرة على القاموس المجاني - tfd.com/interface

يعتبر

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top