瑞吉外卖(22)- 短信发送功能开发(了解一下)

文章目录

  • 效果展示
  • 短信服务介绍
  • 阿里云短信服务-(了解)
    • 介绍
    • 注册账号
  • 代码开发
    • maven坐标
    • 调用API(SMSUtils.java)

效果展示

在这里插入图片描述

短信服务介绍

在这里插入图片描述

阿里云短信服务-(了解)

介绍

在这里插入图片描述

注册账号

这里我们不使用阿里云了,注册需要营业执照,我们只是了解下即可
在这里插入图片描述
在这里插入图片描述

代码开发

在这里插入图片描述

maven坐标

        <dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-core</artifactId><version>4.5.16</version></dependency><dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-dysmsapi</artifactId><version>2.1.0</version></dependency>

调用API(SMSUtils.java)

package com.taotao.reggie.utils;import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.dysmsapi.model.v20170525.SendSmsRequest;
import com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.profile.DefaultProfile;/*** 短信发送工具类*/
public class SMSUtils {/*** 发送短信* @param signName 签名* @param templateCode 模板* @param phoneNumbers 手机号* @param param 参数*/public static void sendMessage(String signName, String templateCode,String phoneNumbers,String param){DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", "", "");IAcsClient client = new DefaultAcsClient(profile);SendSmsRequest request = new SendSmsRequest();request.setSysRegionId("cn-hangzhou");request.setPhoneNumbers(phoneNumbers);request.setSignName(signName);request.setTemplateCode(templateCode);request.setTemplateParam("{\"code\":\""+param+"\"}");try {SendSmsResponse response = client.getAcsResponse(request);System.out.println("短信发送成功");}catch (ClientException e) {e.printStackTrace();}}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/38284.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Tasker短信转发

需要开启权限&#xff08;在权限管理中&#xff09;与监听功能&#xff08;在系统设置的辅助功能中&#xff09; &#xff08;1&#xff09;添加事件&#xff1a; 点击右下角的 ----> 事件 ----> 电话 ----> 收到短信 ----> 不做修改返回即可或者在发件人或者内…

Tasker 短信转发微信,所有通知转发微信

前言 快速写一篇&#xff0c;不想花太多时间&#xff0c;不是详细教程&#xff0c;导入就完了。 准备 一台能看片的安卓手机&#xff08;至少安卓5.0&#xff09;。安装好Tasker&#xff08;版本越新越好&#xff0c;目前5.9.3 beta3&#xff09;。权限给足&#xff0c;自启&am…

android实现短信自动转发,利用短信通知的方式在Tasker中实现收到Android手机短信自动转发到微信...

在Tasker中利用短信的通知实现短信内容转发到微信 之前的教程是利用Tasker自带的短信变量来实现的&#xff0c;这有一个无法解决问题&#xff1a;在360&#xff0c;魅族&#xff0c;坚果等品牌的手机中无法获取短信的消息内容。 利用短信的通知则可以获取短信的内容&#xff0c…

AIGC技术发展和应用方向

AIGC&#xff08;Artificial Intelligence Generated Content&#xff09;是指通过人工智能技术生成的各种文本、图像、音频和视频等多媒体内容。AIGC技术是机器学习和自然语言处理等技术的结合&#xff0c;通过对海量数据的学习和分析&#xff0c;可以让计算机模拟人类的创造力…

未来先行者共赴2023全球智博会

从传统机器学习到深度学习&#xff0c;从简单执行到多模态、多任务的综合处理&#xff0c;人工智能技术正不断向更加智慧和复杂的领域拓展进化。伴随着人工智能一路高歌猛进的跨越式发展&#xff0c;产业寻求共融&#xff0c;加速智慧升级&#xff1b;城市汇流聚链&#xff0c;…

GAN出一个女朋友

文章目录 GAN(生成对抗网络&#xff09;1. 生成对抗网络简述2.具体内容2.1 网络如何训练2.2 网络训练时会遇到的问题 3.GAN的发展4.GAN的代码实践4.1 基于GAN的mnist数据生成4.2 放大招—生成美女图片4.2.1 爬取美女图片4.2.2 提取人脸4.2.3 开始训练 GAN(生成对抗网络&#xf…

chatgpt赋能python:Python更换桌面背景指南:教你如何用Python快速实现桌面背景更换

Python更换桌面背景指南&#xff1a;教你如何用Python快速实现桌面背景更换 如果你已经厌倦了一成不变的桌面背景&#xff0c;那么Python可以帮助你快速实现更换功能。本指南将教您如何用Python编写简单的代码来更改桌面背景。 如何用Python更换桌面背景 Python中有几个库可…

chatgpt赋能python:Python自定义背景:让你的编程世界更加缤纷多彩

Python 自定义背景&#xff1a;让你的编程世界更加缤纷多彩 随着科技的迅速发展&#xff0c;人们的日常生活和工作中越来越多地依赖于电脑和各种数字设备。而对于程序员来说&#xff0c;他们的编程世界更是离不开电脑和代码编辑器。因此&#xff0c;如何让这个世界变得更加优美…

chatgpt赋能python:如何使用Python将背景色更改为黑色

如何使用Python将背景色更改为黑色 在网页设计中&#xff0c;背景色是非常重要的元素之一。有时候&#xff0c;为了让网页看起来更加时尚和艺术&#xff0c;设计师可能会使用黑色背景来营造一种神秘和高质感的感觉。在本篇文章中&#xff0c;我们将介绍如何使用Python将背景色…

chatgpt赋能python:Python图片查看器:优化你的图片浏览体验

Python图片查看器&#xff1a;优化你的图片浏览体验 如果你常常处理图片&#xff0c;那么一个高效的图片浏览器会节约你大量的时间。本文将介绍一款使用Python编写的开源图片查看器&#xff0c;它可以帮助你快速预览和编辑图片。此外&#xff0c;我们还会分享如何使用关键字优…

C/C++编程:继承构造函数

引入 在传统C中&#xff0c;如果派生类要使用使用基类的构造函数&#xff0c;通常需要在构造函数中显式声明&#xff1a; struct A{ public:A(int i) {} };struct B : A{B (int i) : A(i){} };B派生自A&#xff0c;B又在构造函数中调用A的构造函数&#xff0c;从而完成构造函…

C++11之继承构造函数(using 声明)

系列文章 C11之正则表达式&#xff08;regex_match、regex_search、regex_replace&#xff09; C11之线程库&#xff08;Thread、Mutex、atomic、lock_guard、同步&#xff09; C11之智能指针&#xff08;unique_ptr、shared_ptr、weak_ptr、auto_ptr&#xff09;浅谈内存管…

继承与派生(Part Ⅱ)——派生类的构造函数/析构函数

派生类的构造函数和析构函数 构造函数的主要作用是对数据成员初始化。基类的构造函数是不能继承的&#xff0c;在声明派生类时&#xff0c;派生类并没有把基类的构造函数继承过来&#xff0c;因此&#xff0c;对继承过来的基类成员初始化的工作也要由派生类的构造函数承担。所…

6.12C++:继承基类的构造函数、单继承的构造函数、多继承的构造函数、派生类复制构造函数、派生类的析构函数

1 继承基类的构造函数 class A{ public:A(){}; // A的构造函数 }; class B : public A{ public:using A:A&#xff1b; }2 单继承的构造函数 class A{ public:A(int i){}; }; class B : public A{ public:B(int i, int j): A(i), bb(j); /i传递给A的构造函数&#xff0c;j初始…

JavaScript构造函数继承

首先介绍对象的call()函数和apply()函数&#xff0c;这两个函数的作用相同、用法不同。它们的作用均是指定当前调用函数的this对象是谁。 call()函数&#xff1a;在第一个传递的参数为一个对象&#xff0c;该对象为该函数的this对象&#xff0c;后面依次传递函数的实参。 apply…

c++继承构造函数

【1】为什么需要继承构造函数&#xff1f; 首先&#xff0c;看看如下代码片段&#xff1a; 1 struct A2 { 3 A(int i)4 {} 5 }; 6 7 struct B : A8 { 9 B(int i) : A(i) 10 {} 11 }; 在C中非常常见&#xff1a;B派生于A&#xff0c;B在构造函数中调用A的构造函…

openAI注册/登录 报错汇总

目录 报错类型问题原因及解决**access denied**<br />**提示An error occurred**<br />**Not available**<br />**同一IP地址频繁注册**<br />**cloudflare死循环验证**<br /> 最后 报错类型 access denied You do not have access to chat.op…

【Java面试题】真实的二面面试题(参考答案为纯个人理解)

1. 你掌握前端的哪些知识&#xff1f; vue2element-ui了解一些css,js 2. 那你说一下vue中的路由吧&#xff1f; vue中的路由是用来设定访问路径的,将路径映射到组件页面上 3. 说一下前端vue页面之间传参的方式&#xff1f; 路由查询字符串(我用的) // 路由定义 { path: /a…

yolo

目标检测 导言&#xff1a;目标检测的任务表述 如何从图像中解析出可供计算机理解的信息&#xff0c;是机器视觉的中心问题。深度学习模型由于其强大的表示能力&#xff0c;加之数据量的积累和计算力的进步&#xff0c;成为机器视觉的热点研究方向。 那么&#xff0c;如何理解…

神经网络与深度学习-学习笔记(5)

1.目标检测与YOLO 目标检测问题 目标检测是在给定的图片中精确找到物体所在位置&#xff0c;并标注出物体的类别。物体的尺寸变化范围很大&#xff0c;摆放物体的角度&#xff0c;姿态不定&#xff0c;而且可以出现在图片的任何地方&#xff0c;并且物体还可以是多个类别。 目…