[英]Getting a strange error 403 forbidden for accessing an API through python
我正在尝试访问一些 email 统计信息: 我的代码:
import json
import os
from sendgrid.helpers.stats import *
from sendgrid import *
# NOTE: you will need move this file to the root directory of this project to execute properly.
# Assumes you set your environment variable:
# https://github.com/sendgrid/sendgrid-python/blob/master/TROUBLESHOOTING.md#environment-variables-and-your-sendgrid-api-key
sg = SendGridAPIClient(os.environ.get('SG****'))
def pprint_json(json_raw):
print(json.dumps(json.loads(json_raw), indent=2, sort_keys=True))
def build_global_stats():
global_stats = Stats()
global_stats.start_date = '2020-01-13'
global_stats.end_date = '2020-01-14'
global_stats.aggregated_by = 'day'
return global_stats.get()
def get_global_stats():
stats_params = build_global_stats()
response = sg.client.stats.get(query_params=stats_params)
print(response.status_code)
print(response.headers)
pprint_json(response.body)
get_global_stats()
Traceback (most recent call last):
File "<ipython-input-10-cee8ef5434a2>", line 35, in <module>
get_global_stats()
File "<ipython-input-10-cee8ef5434a2>", line 29, in get_global_stats
response = sg.client.stats.get(query_params=stats_params)
File "C:\Users\blah\AppData\Local\Continuum\anaconda3\lib\site-packages\python_http_client\client.py", line 262, in http_request
self._make_request(opener, request, timeout=timeout)
File "C:\Users\blah\AppData\Local\Continuum\anaconda3\lib\site-packages\python_http_client\client.py", line 178, in _make_request
raise exc
ForbiddenError: HTTP Error 403: FORBIDDEN
可以注意到,我得到了这个禁止的错误。 这是什么原因?我该如何解决? 这不是我的一个被阻止的站点,所以不知道为什么我会收到这个错误
对我来说,它只有在 SendGrid 上添加一个新的发件人后才有效,并在“ from ”参数上使用这个发件人。
按照本教程:
然后,转到注册的电子邮件并确认发件人身份。 之后,您应该能够发送电子邮件。
您需要在此处的 SendGrid 控制台中编辑 API 密钥的权限。 单击要编辑的 API 密钥右侧的齿轮图标,选择“编辑 API 密钥”,您可以微调该密钥的权限。
将 api 密钥的权限更改为 full 并在 sendgrip web 中添加新的发件人电子邮件并验证发件人电子邮件。 然后尝试 sendmail()。
这个流程对我有用
对我来说,我需要将消息正文中的 From 字段更新为与 sendGrid 帐户关联的经过验证的 ail 帐户。
使用单一发件人身份验证验证单个电子邮件,例如 hutch@gmail.com 这将允许您通过您的 SendGrid API KEY 从 hutch@gmail.com 发送电子邮件
我遇到了同样的问题,并且在我创建了一个新的(第二个)发件人并对其进行验证后,它也对我有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.