为了账号安全,请及时绑定邮箱和手机立即绑定

在 sendgrid API 中实现“/messages”端点时出现授权异常

在 sendgrid API 中实现“/messages”端点时出现授权异常

叮当猫咪 2022-11-02 15:23:28
我正在开发一个 jsf + spring 应用程序,并尝试使用“/messages”端点通过 sendgrid api 发送所有电子邮件。我尝试在 Java 中实现“/messages”端点,类似于此处示例中提到的“/stats”端点。下面是我的代码我正在我的应用程序上下文中初始化发送网格对象<bean id="sendGrid" class="com.sendgrid.SendGrid">    <constructor-arg name="apiKey" value="my_api_key"/></bean>然后我在我的服务 bean 中使用该对象的自动装配实例,如下所示:com.sendgrid.Request request = new Request();try {   request.setMethod(Method.GET);   request.setEndpoint("messages");   request.addQueryParam("limit", "10");   request.addQueryParam("query", "status='processed'");   com.sendgrid.Response response=sendGrid.api(request);   LOGGER.debug(response.getBody());} catch (IOException e) {   LOGGER.error(ExceptionUtils.getStackTrace(e));}但是我收到以下异常堆栈跟踪:java.io.IOException: Request returned status Code 400 Body:{"errors":[{"message":"authorization required"}]}at com.sendgrid.Client.executeApiCall(Client.java:287)at com.sendgrid.Client.get(Client.java:163)at com.sendgrid.Client.api(Client.java:308)at com.sendgrid.SendGrid.makeCall(SendGrid.java:203)at com.sendgrid.SendGrid.api(SendGrid.java:225)因为我能够成功发送电子邮件并接收统计信息。我不认为授权应该是这里的问题。我在某个地方出错了还是我错过了什么?欢迎任何猜测或线索。谢谢
查看完整描述

2 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

我联系了 sendgrid 支持团队,这是一个 API 密钥问题。由于我正在试用免费帐户,因此我无法访问该特定端点。但是,一旦我升级到带有电子邮件活动插件的付费帐户,它就起作用了。



查看完整回答
反对 回复 2022-11-02
?
狐的传说

TA贡献1804条经验 获得超3个赞

是的,就像 Pranay 所说,您必须购买名为“扩展电子邮件活动历史记录”的附加组件,位于(使用发送网格登录后,查找)
设置 → Account_Details → Product_Page → 向下滚动到附加组件 → 然后选择“扩展电子邮件活动历史记录”并添加到您的计划中。(这个附加组件的当前成本是 12 美元/月*,我不明白这里 * 的含义)
您可以查看以下链接以获取 sendgrid 代码片段
https://docs.sendgrid.com/api-reference/e-mail- activity/filter-all-messages

希望这有助于
PK

查看完整回答
反对 回复 2022-11-02
  • 2 回答
  • 0 关注
  • 86 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信