feat:阿里云短信模块开发
This commit is contained in:
@@ -4,22 +4,22 @@ import com.aliyun.auth.credentials.Credential;
|
|||||||
import com.aliyun.auth.credentials.provider.StaticCredentialProvider;
|
import com.aliyun.auth.credentials.provider.StaticCredentialProvider;
|
||||||
import com.aliyun.sdk.service.dysmsapi20170525.AsyncClient;
|
import com.aliyun.sdk.service.dysmsapi20170525.AsyncClient;
|
||||||
import com.aliyun.teaopenapi.models.Config;
|
import com.aliyun.teaopenapi.models.Config;
|
||||||
import com.xiang.xservice.basic.xservice.aliyun.config.AliyunProperties;
|
import com.xiang.xservice.basic.xservice.aliyun.config.AliyunAuthProperties;
|
||||||
import darabonba.core.client.ClientOverrideConfiguration;
|
import darabonba.core.client.ClientOverrideConfiguration;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
@EnableConfigurationProperties({AliyunProperties.class})
|
@EnableConfigurationProperties({AliyunAuthProperties.class})
|
||||||
public class ClientUtils {
|
public class ClientUtils {
|
||||||
|
|
||||||
@Setter
|
@Setter
|
||||||
private static AliyunProperties aliyunProperties;
|
private static AliyunAuthProperties aliyunProperties;
|
||||||
private static final String ENDPOINT = "dysmsapi.aliyuncs.com";
|
private static final String ENDPOINT = "dysmsapi.aliyuncs.com";
|
||||||
|
|
||||||
public static com.aliyun.dysmsapi20170525.Client initClients() throws Exception {
|
public static com.aliyun.dysmsapi20170525.Client initClients() throws Exception {
|
||||||
AliyunProperties properties = new AliyunProperties();
|
AliyunAuthProperties properties = new AliyunAuthProperties();
|
||||||
Config config = new Config()
|
Config config = new Config()
|
||||||
// 配置 AccessKey ID,请确保代码运行环境配置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_ID。
|
// 配置 AccessKey ID,请确保代码运行环境配置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_ID。
|
||||||
.setAccessKeyId(aliyunProperties.getAccessKeyId())
|
.setAccessKeyId(aliyunProperties.getAccessKeyId())
|
||||||
@@ -32,8 +32,8 @@ public class ClientUtils {
|
|||||||
|
|
||||||
public static AsyncClient initAsyncClient() {
|
public static AsyncClient initAsyncClient() {
|
||||||
StaticCredentialProvider provider = StaticCredentialProvider.create(Credential.builder()
|
StaticCredentialProvider provider = StaticCredentialProvider.create(Credential.builder()
|
||||||
.accessKeyId(System.getenv(aliyunProperties.getAccessKeyId()))
|
.accessKeyId(aliyunProperties.getAccessKeyId())
|
||||||
.accessKeySecret(System.getenv(aliyunProperties.getAccessKeySecret()))
|
.accessKeySecret(aliyunProperties.getAccessKeySecret())
|
||||||
.build());
|
.build());
|
||||||
return AsyncClient.builder()
|
return AsyncClient.builder()
|
||||||
.region("cn-hangzhou") // Region ID
|
.region("cn-hangzhou") // Region ID
|
||||||
|
|||||||
@@ -3,13 +3,13 @@ package com.xiang.xservice.basic.xservice.aliyun.config;
|
|||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
import org.springframework.cloud.context.config.annotation.RefreshScope;
|
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@RefreshScope
|
@ConfigurationProperties(prefix = "aliyun.auth")
|
||||||
public class AliyunProperties {
|
public class AliyunAuthProperties {
|
||||||
|
|
||||||
private String accessKeyId;
|
private String accessKeyId;
|
||||||
private String accessKeySecret;
|
private String accessKeySecret;
|
||||||
@@ -7,9 +7,9 @@ import javax.annotation.PostConstruct;
|
|||||||
@Component
|
@Component
|
||||||
public class AliyunConfigHolder {
|
public class AliyunConfigHolder {
|
||||||
|
|
||||||
private final AliyunProperties aliyunProperties;
|
private final AliyunAuthProperties aliyunProperties;
|
||||||
|
|
||||||
public AliyunConfigHolder(AliyunProperties aliyunProperties) {
|
public AliyunConfigHolder(AliyunAuthProperties aliyunProperties) {
|
||||||
this.aliyunProperties = aliyunProperties;
|
this.aliyunProperties = aliyunProperties;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,10 @@
|
|||||||
|
package com.xiang.xservice.basic.xservice.aliyun.config;
|
||||||
|
|
||||||
|
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
@EnableConfigurationProperties(AliyunAuthProperties.class)
|
||||||
|
public class AliyunPropertiesConfig {
|
||||||
|
|
||||||
|
}
|
||||||
@@ -13,7 +13,7 @@ public class SmsCodeServiceImpl implements ISmsCodeService {
|
|||||||
Map<String, String> param = Maps.newHashMap();
|
Map<String, String> param = Maps.newHashMap();
|
||||||
param.put("code", smsCode);
|
param.put("code", smsCode);
|
||||||
try {
|
try {
|
||||||
SmsCodeUtils.asyncSmsCode(phoneNumber, "大象网", "SMS_259435198", param, null);
|
SmsCodeUtils.asyncSmsCode(phoneNumber, "大象网", "SMS_464515480", param, null);
|
||||||
return Boolean.TRUE;
|
return Boolean.TRUE;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
return Boolean.FALSE;
|
return Boolean.FALSE;
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
|
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
|
||||||
com.xiang.xservice.basic.xservice.aliyun.config.AliyunProperties
|
com.xiang.xservice.basic.xservice.aliyun.config.AliyunPropertiesConfig
|
||||||
Reference in New Issue
Block a user