Sendgrid-nodejs: الخلط بين "الاستبدالات" و "dynamicTemplateData"

تم إنشاؤها على ١٦ يناير ٢٠١٩  ·  16تعليقات  ·  مصدر: sendgrid/sendgrid-nodejs

ملخص القضية

أنا مرتبك بين substitutions و dynamicTemplateData .

أحصل على substitutions أو dynamicTemplateData للعمل إذا أرسلت كليهما! إذا قمت بإخراج أي منهما ، فلن يحل محل قيم المقاود في القالب.

sgMail
        .send({
          from: { email: '[email protected]', name: 'Test' },
          personalizations: [
            {
              to: { email: member.email },
              substitutions: {
                memberName: member.name
              },
              dynamicTemplateData: {
                memberName: member.name
              }
            }
          ],
          templateId: '111'
        })
        .then(() => console.log('Mail sent successfully'))
        .catch(error => console.error(error.toString()))

تفاصيل تقنية:

  • Sendgrid-nodejs الإصدار: 6.3.1
  • إصدار Node.js: 10.15.0
unknown or a waiting for feedback question

التعليق الأكثر فائدة

هل يمكن لأحد تحديث المستندات في

https://sendgrid.com/docs/for-developers/sending-email/personalizations

لذكر dynamic_template_data حيث تم ذكر substitutions ؟ أعتقد أن هذا يمكن أن يوفر الكثير من الناس الكثير من الوقت.

شكر!

ال 16 كومينتر

مرحبا herkulano ،

ستستخدم dynamicTemplateData مع قوالب المعاملات الخاصة بنا. substitutions مع قوالبنا القديمة .

أتمنى أن يساعد ذلك!

مع أحر تحياتي،

إلمر

شكرا على الرد ، فهمت ذلك الآن.

أنا أستخدم قوالب المعاملات الخاصة بك ، ولكن إذا استخدمت dynamicTemplateData ، فلن يعمل.

هل يمكن لأحد تحديث المستندات في

https://sendgrid.com/docs/for-developers/sending-email/personalizations

لذكر dynamic_template_data حيث تم ذكر substitutions ؟ أعتقد أن هذا يمكن أن يوفر الكثير من الناس الكثير من الوقت.

شكر!

مرحبا herkulano ،

هل تم حل مشكلتك الآن؟

danielzen ،

شكرا لتوضيح رابط التوثيق هذا! (cc @ ksigler7Whatthefoxsays)

مع أحر تحياتي،

إلمر

ليس حقًا ، كما ذكرت لسبب ما ، لا يعمل إلا إذا أضفت القيمتين إذا أخذت أيًا منهما ، فهذا لا يعمل.

لقد ابتعدت منذ ذلك الحين عن Sendgrid لذا لن أتمكن من متابعة هذا الأمر.

شكرا لدعمكم.

شكرا على الرد herkulano ،

إذا اخترت العودة ، يسعدني تقديم المزيد من المساعدة.

تضمين التغريدة

وهنا ... https://sendgrid.api-docs.io/v3.0/mail-send/v3-mail-send

لا تزال تواجه هذه المشكلة في الإصدار 6.3.1. الحل هو إضافة كائن فارغ كقيمة substitutions .

مرحبا iudelsmann ،

هل حاولت استخدام هذا المثال ؟

مع أحر تحياتي،

إلمر

تجربة نفس السلوك في 6.3.1 مثلiudelsmann.

أنا آسف يا رفاق ولكن هذا محبط حقًا. لقد حصلت عليه للعمل الآن باستخدام dynamicTemplateData ولكن لماذا لا يتم تحديث الوثائق. وإلا ، فإن الأشخاص مثلي يضيعون وقتنا في التفكير في أننا ارتكبنا خطأً. ناهيك عن أن بعض نقاط النهاية لا تعمل مع واجهة برمجة التطبيقات الجديدة (مثل إضافة جهات اتصال). لقد اخترت SendGrid لأنه من المفترض أن يكون صديقًا للمطورين ولكن يبدو أن هناك العديد من المشكلات المتعلقة بالأشياء التي قمت بتغييرها على مر السنين. لقد تلقيت أيضًا آراء متضاربة تمامًا حول تتبع ASM مقابل الاشتراك من عدة أشخاص دعم. أتمنى لو أنني ذهبت مع MailChimp أو أي شيء آخر في هذه المرحلة نظرًا للتناقضات والوثائق الخاطئة فقط.

إليك الوثائق الخاطئة التي تحتاج إلى تحديث لتوفير بعض الوقت في المستقبل لشخص آخر. يستخدم كلا هذين الاستبداليين "البدائل" التي لا تعمل:
https://github.com/sendgrid/sendgrid-nodejs/blob/master/docs/use-cases/customization.md
https://github.com/sendgrid/sendgrid-nodejs/blob/master/docs/use-cases/kitchen-sink.md

أي تحديثات للوثائق؟ لا يزال من الصعب معرفة استخدام dynamicTemplateData بدون مستندات.

لقد قمت بتحديث المستندات المدرجة عن طريق استبدال معلمات النموذج القديمة بمعلمات ديناميكية. للحصول على أمثلة حول استخدام القوالب القديمة ، انظر هنا .

نفس الخطأ: الاستبدال لا يعمل.

{ from: '[email protected]', subject: 'test subject', text: 'Text', html: html, personalizations: [ { 'to': [ { 'email': '[email protected]', 'name': 'John' } ], 'subject': 'Example 01', 'substitutions': { '-name-': 'John' } }, { 'to': [ { 'email': '[email protected]', 'name': 'Jane' } ], 'subject': 'Example 02', 'substitutions': { '-name-': 'Jane' } } ] }

يتم إرسال البريد الإلكتروني ولكن لا يتم استبدال متغير استبدال html بالقيمة المقدمة. هذا هو html الوحيد الخاص بي وليس القالب الذي يتم تخزينه عادةً على بوابة SendGrid.

chdharm الرجاء فتح إصدار جديد مع تفاصيل حول ما تحاول القيام به. لا يتم متابعة القضايا المغلقة عن كثب.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات