SendGrid是否停止更改纯文本链接?

Sendgrid to stop changing plain text links?(SendGrid是否停止更改纯文本链接?)
本文介绍了SendGrid是否停止更改纯文本链接?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何通知SendGrid停止修饰纯文本URL?

如果有必要,请使用SendGrid SDK for Python。

sendgrid.SendGridClient(username, pwd)
mail = sendgrid.Mail()
mail.set_html(html_message)
mail.set_text(text_message_with_urls)  # <-- urls are here
...
sendgrid_client.send(mail)

对于HTML端,这已经有了答案:

Is it possible to exclude links from tracking

邮件的HTML部分仍需要跟踪。

推荐答案

我联系了支持人员,他们通知我可以将Clicktrack SMTP filter与X-SMTPAPI标题一起使用。

有两个筛选器选项,一个是启用和禁用单击跟踪设置,另一个是启用或禁用邮件纯文本部分中的单击跟踪链接。

SendGrid Python客户端具有帮助器类ClickTracking来控制这些设置:

import json
import os

from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import *

sendgrid_client = SendGridAPIClient(os.environ.get('SENDGRID_API_KEY'))
from_email = Email("team@example.com")
to_email = To("test@example.com")
subject = "Sending with ClickTracking plain text disabled"
content = Content(MimeType.text, "Test URL: https://www.google.com")
message = Mail(from_email, to_email, subject, content)

tracking_settings = TrackingSettings()
tracking_settings.click_tracking = ClickTracking(enable=True, enable_text=False)
message.tracking_settings = tracking_settings

response = sendgrid_client.send(message=message)
print(response.status_code)

使用ClickTrack筛选器设置`X-SMTPAPI‘标头的flaskmail示例:

from flask_mail import Mail
from flask_mail import Message

mail = Mail(app)
subject = "Sending with clicktrack plain text disabled"
body = "Test URL: https://www.google.com"
headers = {"X-SMTPAPI": json.dumps({
  "filters" : {
    "clicktrack" : {
      "settings" : {
        "enable" : 1,
        "enable_text" : False
      }
    }
  }
})}
message = Message(subject=subject, body=body, extra_headers=headers)
mail.send(message)

这篇关于SendGrid是否停止更改纯文本链接?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Leetcode 234: Palindrome LinkedList(Leetcode 234:回文链接列表)
How do I read an Excel file directly from Dropbox#39;s API using pandas.read_excel()?(如何使用PANDAS.READ_EXCEL()直接从Dropbox的API读取Excel文件?)
subprocess.Popen tries to write to nonexistent pipe(子进程。打开尝试写入不存在的管道)
I want to realize Popen-code from Windows to Linux:(我想实现从Windows到Linux的POpen-code:)
Reading stdout from a subprocess in real time(实时读取子进程中的标准输出)
How to call type safely on a random file in Python?(如何在Python中安全地调用随机文件上的类型?)