在Java 中 使用 AWS SNS 来发送短信的例子

AWS:使用 SNS 发送短信 -> Java 代码 使用 AWS 的 SNS 发送短信,首先是需要加载的包参考: Java 的代码: import com.amazonaws.auth.AWSCredentials; import com.amazonaws.auth.AWSCredentialsProvider; import com.amazonaws.services.sns.AmazonSNS; import com.amazona... 阅读详情

前言:AWS Java SDK 地址

1)AWS java SDK 主页在 https://aws.amazon.com/tr/sdk-for-java/?nc1=h_ls

2)AWS 所有的Java SDK 的,maven仓库地址在:https://mvnrepository.com/artifact/com.amazonaws

下面是本例的信息:

1)首先:下载必要的AWS 开发包,如下所示:
这里写图片描述

 如果你用maven来构建,则直接可以在pom.xml加入以下的配置就可以了

<!-- https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-sns -->
<dependency>
    <groupId>com.amazonaws</groupId>
    <artifactId>aws-java-sdk-sns</artifactId>
    <version>1.11.229</version>
</dependency>

AWS SNS 地址在:https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-sns

 

Java代码如下

import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.services.sns.AmazonSNS;
import com.amazonaws.services.sns.AmazonSNSClientBuilder;
import com.amazonaws.services.sns.model.MessageAttributeValue;
import com.amazonaws.services.sns.model.PublishRequest;
import com.amazonaws.services.sns.model.PublishResult;

import java.util.HashMap;
import java.util.Map;

public class ShortMessage {
    private Map<String, MessageAttributeValue> smsAttributes;


    public Map<String, MessageAttributeValue> getDefaultSMSAttributes() {
        if (smsAttributes == null) {
            smsAttributes = new HashMap<>();
            smsAttributes.put("AWS.SNS.SMS.SenderID", new MessageAttributeValue()
                    .withStringValue("1")
                    .withDataType("String"));
            smsAttributes.put("AWS.SNS.SMS.MaxPrice", new MessageAttributeValue()
                    .withStringValue("0.05")
                    .withDataType("Number"));
            smsAttributes.put("AWS.SNS.SMS.SMSType", new MessageAttributeValue()
                    .withStringValue("Transactional")
                    .withDataType("String"));
        }
        return smsAttributes;
    }

    public PublishResult sendSMSMessage(String phoneNumber, String message) {
        return sendSMSMessage(phoneNumber, message, getDefaultSMSAttributes());
    }

    public PublishResult sendSMSMessage(String phoneNumber, String message, Map<String, MessageAttributeValue> smsAttributes) {
        AWSCredentials awsCredentials = new AWSCredentials() {
            @Override
            public String getAWSAccessKeyId() {
                return "xxxxxxxx"; // 带有发短信权限的 IAM 的 ACCESS_KEY
            }

            @Override
            public String getAWSSecretKey() {
                return "xxxxxxxx"; // 带有发短信权限的 IAM 的 SECRET_KEY
            }
        };
        AWSCredentialsProvider provider = new AWSCredentialsProvider() {
            @Override
            public AWSCredentials getCredentials() {
                return awsCredentials;
            }

            @Override
            public void refresh() {
            }
        };
        AmazonSNS amazonSNS = null;
        try {
            amazonSNS = AmazonSNSClientBuilder.standard().withCredentials(provider).withRegion("us-east-1").build();
        } catch (Exception e) {

        }
        return amazonSNS.publish(
                new PublishRequest()
                        .withMessage(message)
                        .withPhoneNumber(phoneNumber)
                        .withMessageAttributes(smsAttributes)
        );
    }

    public static void main(String[] args) {
        ShortMessage shortMessage = new ShortMessage();
        PublishResult publishResult = shortMessage.sendSMSMessage("+8613911088332", "trial SMS msg");
        System.out.println(publishResult);
    }

}

 

java开发aws发送短信 查询出来的价格出现多个代表在手机号码所在地有多个运营商,需要根据每一个运营商的不同动态收取费用。2. 选择你想要在哪个区域运行你的沙盒并添加海外号码(只能使用国外号码)到这里我们的开发就算完成了,可以去做推出沙盒的操作去给所有人发送短信了。当结果返回中出现messageId的时候代表我的短信发送成功了。3. 添加我的凭证用于获取短信发送代码中的秘钥与key。到这里我们的前期工作就准备完毕了,可以进行代码开发了。4.创建访问秘钥:一个用户只能创建两个访问秘钥。 阅读详情

相关推荐

JAVA接入AWS短信服务

### 一、登录AWS控制台搜索Amazon Pinpoint或者Simple Notification Service ### 二、添加沙盒测试号码,此时需要验证码验证 ==沙盒模式发送短信只能发送沙盒中验证的号码并且区域要统一== 可以用到下面的网站获取验证码: https://smsreceivefree.com 在线短信接收,在线短信平台,免费接收短信 - 免费接码 ### 三、参考文档以及SDK,编写工具类 ``` import com.amazonaws.auth.AWSCr

qq_38641131的博客 3159

java整合aws上的SNS发送邮件工具类

【代码】java整合aws上的SNS发送邮件工具类。

weixin_43933295的博客 900

Node.js中使用AWS SNS服务发送短信

在Node.js中实现通过AWS SDK使用AWS SNS服务发送短信至指定的手机号码,并通过Topic群发短信至多个手机号码。

Ghosind 1782

AWS SNS-SpringBoot实现发送登陆验证码短信的API

https://blog.youkuaiyun.com/oblily/article/details/86711441

---------- 1404

aws短信发送java_AWS:使用 SNS 发送短信【转载】

public class ShortMessage {private Map smsAttributes;public Map getDefaultSMSAttributes() {if (smsAttributes == null) {smsAttributes = new HashMap<>();smsAttributes.put("AWS.SNS.SMS.SenderID", n...

weixin_39611331的博客 570

JAVA 整合 AWS SNS发送短信[Amazon Simple Notification Service]

转载请表明出处 谢谢 JAVA 整合 AWS SNS发送短信[Amazon Simple Notification Service]java整合aws sns发送短信pomyml工具类 java整合aws sns发送短信 pom <properties> <aws-sns.version>1.12.5</aws-sns.version> </properties> <!-- AWS S.

SophiaLeo的博客 2096

amazon-aws 使用 SNS 发送短信

jar-maven <!-- https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-sns --> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-...

weixin_30363981的博客 2229

aws sns与mysql_amazon-aws 使用 SNS 发送短信

importcom.amazonaws.auth.AWSCredentials;importcom.amazonaws.auth.AWSCredentialsProvider;importcom.amazonaws.services.sns.AmazonSNS;importcom.amazonaws.services.sns.AmazonSNSClientBuilder;importcom.ama...

weixin_39850599的博客 360

aws短信发送java_amazon-aws 使用 SNS 发送短信

importcom.amazonaws.auth.AWSCredentials;importcom.amazonaws.auth.AWSCredentialsProvider;importcom.amazonaws.services.sns.AmazonSNS;importcom.amazonaws.services.sns.AmazonSNSClientBuilder;importcom.ama...

weixin_35925298的博客 787

AWS短信发送代码

AWS短信发送1.AWS网址2.开通IAM权限登录到控制台3.拿到IAM公钥和私钥4.短信SDK5.短信demo 1.AWS网址 https://eu-central-1.console.aws.amazon.com/sns/v3/home?region=eu-central-1#/mobile/text-messaging 2.开通IAM权限登录到控制台 3.拿到IAM公钥和私钥 4.短信SDK <dependency> <groupId>com.amazonaws<

qq_40572200的博客 1182

ERA5 数据集下载(2025最新 可运行)

众所周知,ERA5数据集经过了更新,尤其是在API访问和下载方式上发生了变化。2025年版的ERA5数据集为气象研究人员提供了更高质量的历史气象数据。本文将介绍如何通过新的API接口下载最新的ERA5数据集。

m0_72141699的博客 3589

aws短信发送java_AWS:使用 SNS 发送短信 -> Java 代码

getDefaultSMSAttributes() {if (smsAttributes == null) {smsAttributes = new HashMap<>();smsAttributes.put("AWS.SNS.SMS.SenderID", new MessageAttributeValue().withStringValue("1").withDataType("St...

weixin_28809949的博客 769

C++继承与多态 - 继承多态原理01

C++继承多态原理讲解

大秦坑王的专栏 2977

aws短信发送java_aws sns 短信util demo

package com.example.demo;import com.amazonaws.auth.AWSCredentials;import com.amazonaws.auth.AWSCredentialsProvider;import com.amazonaws.services.sns.AmazonSNS;import com.amazonaws.services.sns.AmazonS...

weixin_30359591的博客 251

Elasticsearch连接中断:深入解析Connection reset by peer问题及优化策略

本文深入解析Elasticsearch连接中断问题,特别是Connection reset by peer错误的成因与解决方案。从TCP层的心跳机制到客户端与服务端的配置差异,详细介绍了网络不稳定、防火墙拦截等常见原因,并提供了六种优化策略,包括KeepAlive调整、TCP参数调优和智能重试机制等,帮助提升Elasticsearch连接的稳定性。

weixin_42546392的博客 410

【论文笔记】LIME: low-light image enhancement via illumination map estimation

【论文笔记】LIME: low-light image enhancement via illumination map estimation 一篇低光图像增强,引用超1000次的经典论文

weixin_45565519的博客 1793

aws短信发送java_使用aws sns和lambda发送定期通知

我有以下用例场景,我正在考虑aws服务,看看我如何能够提出可扩展的解决方案 . 在此先感谢您的帮助!场景:用户可以使用他们的电子邮件和电话注册一个应用程序(名为'Let's Remind'或其他名称) . 该应用程序做一件事是向用户发送电子邮件和短信警报 . 用户可以创建n个他想要提醒的任务 . 例如,他可以设置每月提醒支付卡会费 . 目前,n的值为每个用户5到10 . 通知是灵活的,意味着它可以...

weixin_30023527的博客 513

C++大牛的博客

1. C++大牛的博客     Bjarne Stroustrup的博客: Bjarne Stroustrup’s Homepage Bjarne Stroustrup,不认识的可以去面壁了,没有他,就没有我们现在的饭碗。Bjarne Stroustrup是丹麦人,目前任教于TAMU。他的Homepage和他的书籍The C++ Programming Language一样

程序猿老樊的博客 6244

AWS SNS推送服务

AWS SNS推送服务

TM_enn的博客 661

零基础实战:云开发家政维修小程序搭建指南

欢迎来到这本关于构建家政维修小程序的电子书!在当今数字化的浪潮中,线上服务已成为我们生活中不可或缺的一部分。从点餐购物到居家维修,人们越来越习惯通过指尖轻点来解决各种需求。正是基于这样的背景,我们希望通过这个系列,手把手地带领大家从零开始,搭建一个功能完备、体验流畅的家政维修平台。这不仅仅是一本技术教程,更是一次将想法变为现实的探索之旅。我们将深入浅出地讲解如何运用云开发等现代技术,实现从用户下单、支付,到客服派单、工人接单,再到订单完成和权限管理等一系列核心业务流程。

低代码布道师的博客 3430

别再写XPath改DOM了!用OpenClaw零代码搞定爬虫全流程(抓取+清洗+存储)

免费版的大模型调用次数有限制(每天100次),但企业版是无限的,还能私有化部署;大模型分析DOM结构有时候会慢1-2秒,但比起节省的时间,完全可以接受;自定义Skill的文档还不够完善,但社区很活跃,有问题在Discord里问,很快就能得到回复。但总的来说,OpenClaw真的改变了我写爬虫的方式——以前我是“代码的奴隶”,现在我是“需求的提出者”,把时间花在更有价值的业务逻辑上,而不是重复繁琐的DOM调试上。如果你也在被传统爬虫折磨,强烈建议你试试OpenClaw,相信我,用了就回不去了。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1313

aws sns 短信util demo

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34242819的博客 412

树莓派 5 AI 套件(Hailo)示例

该用户自定义类作为输入传递给回调函数,该函数在管道输出上运行。它用于主程序与回调函数之间的通信。它对 hailo_rpi_common::app_callback_class 进行了扩展,并可根据应用程序的具体情况定制附加变量和方法。

机器人控制与仿真应用 4115

AWS SDK for Java 2.x 实现 Amazon SNS 消息通知服务实践指南

AWS SDK for Java 2.x 实现 Amazon SNS 消息通知服务实践指南 【免费下载链接】aws-doc-sdk-examples Welcome to the AWS Code Examples Repository. This repo contains code examples used in...

gitblog_01108的博客 404

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

上一篇: springboot 启动原理详解
下一篇: Amazon AWS S3 java 开发例子
大树叶
博客等级 码龄12年 1171粉丝 664原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值