هل تريد تضمين صورة ديناميكية في صفحة ويب باستخدام POST؟

StackOverflow https://stackoverflow.com/questions/243375

سؤال

لقد قمت بكتابة برنامج نصي CGI يقوم بإنشاء صورة ديناميكيًا باستخدام بيانات GET.لتضمين هذه الصورة في صفحة الويب الخاصة بي، أستخدم الكود التالي:

<img src="image.py?text=xxxxxxxxxxxxxx">

المشكلة هي أنني أتوقع في المستقبل أن يصبح حقل "النص" طويلًا جدًا وسيصبح عنوان URL كبيرًا جدًا.من خلال البحث في Google، لا يبدو أن هناك حدًا ثابتًا لطول عنوان URL (على سبيل المثال.يعتمد على المتصفح والخادم والوكيل وما إلى ذلك) هل هناك طريقة أفضل للقيام بذلك؟

إذا كان الأمر مهمًا، فأنا أعمل مع Django وPython ولا أستطيع استخدام أي برمجة نصية من جانب العميل (على سبيل المثال.جافا سكريبت).

هتافات ، بن

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

المحلول

وتخزين النص في مكان ما (مثل قاعدة بيانات) ثم تمر عبر المفتاح الأساسي.

نصائح أخرى

سيؤدي هذا إلى حصولك على صورة كنتيجة لمنشور - قد لا تعجبك

  1. ضع iFrame حيث تريد الصورة وحجمها وقم بإزالة أشرطة التمرير
  2. قم بتعيين src إلى نموذج مع تعيين المدخلات المخفية على معلمات النشر الخاصة بك والإجراء المعين على عنوان URL الذي سيؤدي إلى إنشاء الصورة
  3. قم بإرسال النموذج تلقائيًا باستخدام JavaScript في body.onload الخاص بـ HTML الخاص بـ iFrame

    ثم إما:

  4. قم بتقديم مجموعة من نوع المحتوى إلى صورة ما وقم بدفق بايتات الصورة

    أو:

  5. قم بتخزين معلمات النشر في مكان ما وقم بإنشاء معرف صغير

  6. قم بتقديم HTML باستخدام علامة img باستخدام المعرف الموجود في عنوان url - ابحث على الخادم عن معلمات النشر

    أو:

  7. إنشاء صفحة تحتوي على علامة صورة تحتوي على صورة مضمنة

    http://danielmclaren.net/2008/03/embedding-base64-image-data-into-a-webpage

ووضع معا ما سبق أن قيل، كيف حول إنشاء صفحتين. يرسل الصفحة الأولى طلب POST عندما يقدم النموذج (دعنا نقول لcreate_img.py) مع النص = XXXXXXX ... المعلمة. ثم create_img.py يأخذ المعلمة النص ويخلق صورة معها، وإدراج ذلك (أو مرجع الملفات) في ديسيبل، ثم عند عرض الصفحة الثانية، وتوليد علامات IMG مثل <img src="render_img.py?row_id=0122">. عند هذه النقطة، render_img.py ببساطة يستعلم ديسيبل لصورة معينة. قبل إنشاء الصورة التي يمكن أن تحقق لمعرفة ما اذا كان بالفعل في قاعدة البيانات ومن ثم إعادة استعمال / إعادة تدوير الصور السابقة مع المعلمة النص نفسه.

واستخدام IMG نصل. سيكون لديك من أجل التوصل إلى آلية أخرى. ماذا عن استدعاء نفس الوظائف في image.py وحفظ الملف كملف مؤقت الذي المرجع في علامة img؟ أو عن كيفية توفير قيمة النص في صف واحد ديسيبل أثناء عرض هذه العلامة img واستخدام row_id مثل ما كنت تمر في البرنامج النصي image.py؟

وقد تكون قادرة على التخفيف من المشكلة عن طريق ضغط النص في المعلمة الحصول عليها.

ومن الرابط أدناه يبدو أنك سوف يكون على ما يرام لفترة من الوقت.)

http://www.boutell.com/newfaq/misc/urllength.html

إذا كنت تستخدم جانغو، ربما يمكنك القيام بذلك عبر علامة قالب بدلا من ذلك؟

وشيء من هذا القبيل:

<img src="{% create_image "This is the text that will be displayed" %}">

وظيفة create_image من شأنه أن يخلق صورة مع دمية / عشوائي اسم / ولدت، والعودة المسار.

وهذا يجنب الحاجة إلى GET أو POST إلى البرنامج النصي، وسوف صور لها أسماء يمكن التحكم فيها.

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

حسنا، أنا قليلا في وقت متأخر إلى الحزب، ولكن هل يمكن استخدام مزيج من MHTML (لIE7 وأدناه)، والبيانات مخطط URI (لجميع المتصفحات الحديثة الأخرى). فهو يتطلب قليلا من العمل على كل من العميل والخادم ولكن يمكنك في نهاية المطاف مع

newimg.src = 'blah';

وومتابعة الكتابة على كيفية القيام بذلك هو في http://gingerbbm.com/؟p= 127 .

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