Sendgrid-nodejs: رأس مخصص لمرفق

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

أهلا،

نحن نستخدم sendgrid لإرفاق ملفات iCal (ics) مع نص البريد. يمكننا تعيين نوع المحتوى على "نص / تقويم" لملف ics ، ومع ذلك لا يمكن تعيين رأس إضافي "method = REQUEST" مما يؤدي إلى عدم التعرف على عملاء البريد الإلكتروني المرفق كحدث تقويم.

هل سيكون من الممكن تعيين رؤوس مخصصة لكل مرفق؟

يعتبر

non-library issue

ال 41 كومينتر

مرحبًا mindnuts ،

لست متأكدًا من فهمي. دعني أتأكد من فهمي:

  1. لديك بريد إلكتروني به مرفق iCal
  2. تريد إضافة رأس إلى هذا البريد الإلكتروني (مثل X-Header: method = Request)
  3. لا يمكنك الآن إضافة عنوان إضافي. ماذا حاولت؟

شكرا!

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

أثناء إنشاء كائن البريد الإلكتروني ، نقوم بإنشاء مصفوفة الملفات على غرار وإعداد "نوع المحتوى" على "نص / تقويم" لملفات .ics. لكي يتم اكتشاف ملفات ics بشكل صحيح بواسطة Outlook ، يجب أن يحتوي المرفق أيضًا على طريقة = طلب معين في الرأس.

Content-Type: text/calendar; charset=UTF-8; method=REQUEST

هل سيكون هذا ممكنًا في عميل Sendgrid؟

هل يمكنك من فضلك مشاركة الكود الذي تستخدمه لتعيين هذا العنوان؟

thinkingserious هنا تذهب:

var sendgrid  = require('sendgrid')('YOUR_SENDGRID_API_KEY');

var email = new sendgrid.Email({
  to:       '[email protected]',
  from:     '[email protected]',
  subject:  'Hello World',
  html: 'My first email <b>through SendGrid.</b>',
  text:     'My first email through SendGrid.'
});

email.addFile({
  filename: 'calendar.ics',
  path: './calendar.ics',
  contentType: 'text/calendar'
});

sendgrid.send(email, function(err, json) {
  if (err) { return console.error(err); }
  console.log(json);
});

هذا هو العنوان الذي تم إنشاؤه بواسطة Sendgrid لهذا المرفق:

Content-Disposition: attachment; filename="calendar.ics"
Content-Transfer-Encoding: base64
Content-Type: text/calendar; charset=utf-8; name="calendar.ics"

ما أود الحصول عليه هو (الطلب هو مجرد مثال):

Content-Type: text/calendar; charset=utf-8; method=REQUEST; name="calendar.ics"

شكرا لك ، هذا المثال مفيد جدا.

هل حاولت تعيين الرأس مباشرةً باستخدام المعلمة headers ؟

thinkingserious لا أريد تعيين رأس البريد الإلكتروني ، أريد أن أكون قادرًا على تعيين العنوان المخصص للمرفق (ملف ics في حالتي) المضاف إلى البريد الإلكتروني.

يعتبر
م

شكرا للتحديث ، هذا منطقي.

لن تكون هذه مشكلة مع مكتبة v3 بعد الآن. في الوقت الحالي ، الطريقة الوحيدة التي يمكنك من خلالها تعيين هذا العنوان هي عبر SMTPAPI: https://github.com/sendgrid/smtpapi-nodejs

thinkingserious شكرا لردكم. ما المقصود بـ ETA لـ V3؟

يجب ألا يزيد عن بضعة أشهر.

mindnuts ،

نحن الآن على بعد أسابيع قليلة ، يمكنك التحقق من v3 / mail / send endpoint هنا: https://sendgrid.com/docs/API_Reference/Web_API_v3/Mail/index.html والإصدار الجديد من هذه المكتبة هنا: https : //github.com/sendgrid/sendgrid-nodejs/tree/v3beta

شكرا لدعمك!

مرحبا thinkingserious ،

أعتقد أن الجميع لا يزالون ينتظرون الحل ، وأنا كذلك!
أود أيضًا تعيين طريقة للطلب وأواجه المشكلة.

هل لديك تحديث؟ لقد مر شهرين!

شكرا،
طاب يومك،
جيريمي

مرحبًا thinkingserious ،

ما زلت مغلقًا بسبب هذه المشكلة!
هل تمتلك اي تحديثات ؟ اي حل ؟

شكرا،
جيريمي

مرة أخرى thinkingserious هل تخطط لحل هذا قريبًا؟
نحن حقا في حاجة إليها!

+1

response: {
      "statusCode": 400,
      "body": {
        "errors": [
          {
            "message": "The attachment type cannot contain ';', or CRLF characters.",
            "field": "attachments.0.type",
            "help": "http://sendgrid.com/docs/API_Reference/Web_API_v3/Mail/errors.html#message.attachments.type"
          }
        ]
      },
      "headers": {
        "server": "nginx",
        "date": "Wed, 01 Mar 2017 04:43:59 GMT",
        "content-type": "application/json",
        "content-length": "216",
        "connection": "close",
        "x-frame-options": "DENY",
        "access-control-allow-origin": "https://sendgrid.api-docs.io",
        "access-control-allow-methods": "POST",
        "access-control-allow-headers": "Authorization, Content-Type, On-behalf-of, x-sg-elas-acl",
        "access-control-max-age": "600",
        "x-no-cors-reason": "https://sendgrid.com/docs/Classroom/Basics/API/cors.html"
      }
    }
}

هل فاتني شيء؟ ما هو الحل المقترح؟ لماذا هذا مغلق

@ باسكالوبيتز ،

هذا لا ينبغي أن يغلق. وذلك بفضل لرؤساء متابعة.

مرة أخرى thinkingserious هل تحل هذه المشكلة ؟!

مرحبا ataraxido ،

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

لقد تلقينا مؤخرًا بعض الأصوات الجديدة لهذه الميزة. عندما يحدث ذلك ، أقوم بتحديث فريق المنتج للمساعدة في زيادة الأولوية.

مع أطيب التحيات،

إلمر

thinkingserious أردت فقط أن أضيف أن هذه ميزة مهمة حقًا بالنسبة لنا أيضًا. أي تحديث على خارطة طريق المنتج؟

متفق عليه hdornier ، سأضيف صوتك إلى المشكلة. شكرا لأخذ الوقت للتصويت!

thinkingserious ، لقد ذكرت أن هذا يمكن إجراؤه باستخدام smtpapi. هل لديك مثال على هذا؟ أي جزء من smtpapi؟ بديل بسيط من نوع ما؟

مرحبًا @ e99cog ،

لست متأكدا لماذا قلت ذلك سابقا :(

لا أعرف ما إذا كان هذا سيعمل باستخدام SMTPAPI ، ولكن هذا مثال على كيفية استخدامه.

مع أطيب التحيات،

إلمر

+1 هنا أيضًا

في النهاية ، اضطررت إلى حل هذه المشكلة باستخدام mailgun ونقطة نهاية message.mime ، حيث تتيح لي إرسال mime بشكل صريح.

هل تقدم sendgrid هذه الميزة في أي API؟

مرحبا جميعا!

أنا مات ، مدير منتج تجربة المطور في SendGrid. أنا مهتم بمعرفة المزيد حول ما تحتاجه من أنواع MIME. عادةً ما نقوم بذلك على أنه جلسة hangout من google ، حتى أتمكن من التعرف على حالة الاستخدام وتفاصيل ما تحتاجه.

لا تتردد في تخصيص وقت في التقويم الخاص بي - https://cal Friendly.com/matt-bernier/mail-send-mime-types

شكرا!!

بحاجة إلى التعامل مع هذا لمشروع قادم أيضًا - هل هناك حالة لهذا؟ لقد مر عامان.

+1
أي ETA لهذا؟

أنا أيضًا مهتم جدًا بهذا. بالتأكيد ، يجب أن يكون من الممكن التوصل إلى إجابة الآن.

لا أريد أن ألعن الأشياء ، لكن طائر يخبرني أننا _ سوبر _ قريبون من نشر هذا :) سأقوم بنشر تحديث هنا بمجرد أن يكون مباشرًا.

مرحبا بالجميع!

أنا متحمس للغاية للإعلان عن حل هذه المشكلة وأن الإصلاح قيد الإنتاج! يرجى المحاولة وإخباري إذا واجهت أي مشكلة أخرى.

شكرا لك على صبرك على هذا!

مع أطيب التحيات،

إلمر

thinkingserious هذا نبأ عظيم! هل يمكنك المساعدة في فهم الخطوات التي يجب اتخاذها بعد ذلك؟ هل تم توفير الدعم للعنوان الإضافي> الطريقة = الطلب؟

مرحبا thinkingserious

لقد حاولت للتو وما زلت أتلقى خطأ (باستخدام واجهة برمجة التطبيقات):

{"أخطاء": [{"message": "لا يمكن أن يحتوي نوع المرفق على أحرف '؛' أو CRLF."، "field": "attachments.0.type"، "help": " http: // sendgrid. com / docs / API_Reference / Web_API_v3 / Mail / errors.html # message.attachments.type "}، {" message ":" لا يمكن أن يحتوي نوع المرفق على أحرف '؛' أو CRLF. "،" field ":" مرفقات. 1. type "،" help ":" http://sendgrid.com/docs/API_Reference/Web_API_v3/Mail/errors.html#message.attachments.type "}]}

هذا ما أفعله باستخدام API API:

$ attachment-> setType ('text / calendar؛ charset = "UTF-8" ؛ الطريقة = الطلب ") ؛

هل أنت متأكد من حل المشكلة؟ ماذا علينا ان نفعل ؟

شكرا

ataraxido إنه يعمل بالنسبة لي
"attachments": [{ "content": "QkVHSU46....EQVINCg==", "type": "text/calendar; method=REQUEST", "filename": "file1.ics" }]

عاد 202 وتم إرسال البريد

مرحبًا ataraxido ، لن تحتاج إلى تحديد مجموعة الأحرف لأن SendGrid ستلحق هذا الحقل تلقائيًا (ينطبق نفس الشيء على text / html ، text / simple). أعطها لقطة أخرى وأخبرنا إذا كانت هذه هي الحيلة 🤞

ataraxido ،

أين يمكنك الحصول عليها تعمل؟

مرحبا abhilashabhatia ،

نعم ، يمكنك الآن عمل "type": "text/calendar; method=REQUEST" . يرجى إعلامي إذا واجهت أي مشاكل.

مرحبا thinkingserious

لقد تمكنت من إرسال طريقة "الرأس" = طلب ولكن لم أتمكن من إرسال ICS مضمن يعمل بشكل جيد داخل Outlook.
حتى في مضمنة مع هذا "الرأس" المخصص ، يقوم الحدث بتذكير ICS المرفق.

أعتقد أنها حالة استخدام واسعة جدًا لجميع عملائك ؛ هل سيكون لديك مثال عملي أم طريقة إرشادية؟

شكرا

+1 للتعليق من ataraxido - هل يمكننا الحصول على مثال thinkingserious

ataraxidotetreault،

فقط للتوضيح ، الإرسال كمرفق يعمل في Outlook ، لكن ليس مضمّنًا؟

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

thinkingserious في الواقع ، تم
أنا أتساءل لماذا ، جربت أشياء كثيرة. أعتقد أنه يمكن أن يكون ذلك بسبب قيامك بإجبار العناصر المضمنة على أن تكون بترميز base64 في حين أن تضمين ICS النموذجي يكون على 7 بت.

مرحبا ataraxido ،

شكرًا على التفصيل ، أعتقد أنك قد تكون على دراية بشيء يتعلق بالترميز.

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