gpt4 book ai didi

python - Sendgrid 停止更改纯文本链接?

转载 作者:行者123 更新时间:2023-12-05 01:17:53 26 4
gpt4 key购买 nike

如何告诉 sendgrid 停止修饰纯文本 URL?

如果重要的话,使用适用于 Python 的 sendgrid SDK。

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 header 。

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

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” header 的 flask-mail 示例:

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)

关于python - Sendgrid 停止更改纯文本链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48397703/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com