您的位置:首页 > 文旅 > 旅游 > 网页设计工具一般有哪几种_制作微信小程序费用_2020站群seo系统_网站优化推广seo

网页设计工具一般有哪几种_制作微信小程序费用_2020站群seo系统_网站优化推广seo

2025/3/29 6:33:56 来源:https://blog.csdn.net/weixin_42933305/article/details/146420417  浏览:    关键词:网页设计工具一般有哪几种_制作微信小程序费用_2020站群seo系统_网站优化推广seo
网页设计工具一般有哪几种_制作微信小程序费用_2020站群seo系统_网站优化推广seo

最新版本更新
https://code.jiangjiesheng.cn/article/362?from=csdn

模板

腾讯云:您好!{}的${},有{}发生{}

阿里云:您好!${orgName}的${monitorName},有${equipName}发生${status}

原腾讯云短信发送的代码兼容阿里云短信模板,前提:参数顺序不变,文案可以变化。

方案:提取阿里云短信模板参数字段,比如上面的,orgName、monitorName、equipName、status,结合腾讯云短信模板入参传的有序List转成key-value Map,最后转成阿里云的需要json字符串。

提取阿里云短信模板中的所有参数字段:

	public static final String ALIYUN_PARAM_REGEX = "\\$\\{(.*?)}";//ReUtil来自hutool:<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>4.5.6</version></dependency>//从阿里云模板中提取参数字段List<String> aliTempParamKeys = ReUtil.findAllGroup1(ALIYUN_PARAM_REGEX, templateMsg);//转成和腾讯云一样的模板,用于构建最后的短信content内容,自己保存短信内容。//String templateMsg = templateMsg.replaceAll(ALIYUN_PARAM_REGEX, "{}");//构建阿里云的短信接口入参:Map<String,Object> newTemplateParams = buildTemplateParamsMap(templateId,aliTempParamKeys, params);/*** 将参数模板,处理成有序的 KeyValue 数组* <p>* 原因是,部分短信平台并不是使用 key 作为参数,而是数组下标,例如说 <a href="https://cloud.tencent.com/document/product/382/39023">腾讯云</a>** @param templateId  短信模板id* @param aliTempParamKeys  短信模板中的字段* @param paramsValue 提交的入参值* @return 处理后的参数 阿里云使用*/Map<String,Object> buildTemplateParamsMap(String templateId, List<String> aliTempParamKeys, String[] paramsValue) {Map<String,Object> map = Maps.newHashMap();if (CollectionUtils.isEmpty(aliTempParamKeys) || paramsValue == null || paramsValue.length == 0) {return map;}// 防止 templateId: '1875303' ,这种参数对不上的情况,// if (aliTempParamKeys.size() != paramsValue.length) {//    throw new GnException("短信参数个数和模板不匹配");// }int maxIdx = paramsValue.length - 1;boolean foundBadParams = false;for (int i = 0, len = aliTempParamKeys.size(); i < len; i++) {String value;if (i > maxIdx) {value = "-";foundBadParams = true;} else {value = paramsValue[i];}map.put(aliTempParamKeys.get(i), value);}if (foundBadParams) {log.error("构建阿里云短信出现入参和模板参数个数对不上的情况,templateId:{},aliTempParamKeys:{},paramsValue:{},结果:{}",templateId, JSONUtil.toJsonStr(aliTempParamKeys), JSONUtil.toJsonStr(paramsValue), JSONUtil.toJsonStr(map));}return map;}

最新版本更新
https://code.jiangjiesheng.cn/article/362?from=csdn

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com