开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 4085|回复: 5
收起左侧

[资源分享] TX云短xin接口

[复制链接]
发表于 2024-4-16 11:07:23 | 显示全部楼层 |阅读模式   广东省东莞市
TX云v3签名_POST_发送短xin

  
子程序名返回值类型公开备 注
TX云v3签名_POST_发送短xin文本型 
参数名类 型参考可空数组备 注
HashedRequestPayload文本型提交数据{'PhoneNumberSet':['+8612345678900'],'SmsSdkAppId':'********','SignName':'****','TemplateId':'***','TemplateParamSet':['****']}
SecretKey文本型身份密钥
SecretId文本型身份ID
变量名类 型静态数组备 注
a加解密对象 
CanonicalRequest文本型 
StringToSign文本型 
Algorithm文本型 
RequestTimestamp文本型 
CredentialScope文本型 
HashedCanonicalRequest文本型 
SecretDate文本型 
SecretService文本型 
SecretSigning文本型 
Signature文本型 
Authorization文本型 
SignedHeaders文本型 
API_URL文本型,
请求头文本型 
响应文本文本型 
SignedHeaders = “content-type;host;x-tc-action”
API_URL = “sms.tencentcloudapi.com”
' 1.拼接规范请求串
CanonicalRequest = “POST”字符 (10)“/”字符 (10)“”字符 (10)“content-type:application/json”字符 (10)“host:sms.tencentcloudapi.com”字符 (10)“x-tc-action:sendsms”字符 (10)“”字符 (10) + SignedHeaders + 字符 (10)校验_取sha256 (到字节集 (HashedRequestPayload))
' 2.拼接待签名字符串
Algorithm = “TC3-HMAC-SHA256”
RequestTimestamp = 时间_取现行时间戳 ()
' RequestTimestamp = “1713234015”
CredentialScope = 时间_格式化 (取现行时间 (), “yyyy-MM-dd”, , 真, )“/”匹配子域名 (API_URL, 1, 1)“/tc3_request”
HashedCanonicalRequest = 校验_取sha256 (到字节集 (CanonicalRequest))
StringToSign = Algorithm + 字符 (10) + RequestTimestamp + 字符 (10) + CredentialScope + 字符 (10) + HashedCanonicalRequest
' 3.计算签名
SecretDate = a.取HMAC值 ( #哈希算法_SHA256, 时间_格式化 (取现行时间 (), “yyyy-MM-dd”, , 真, ), “TC3” + SecretKey, )
SecretService = a.取HMAC值 ( #哈希算法_SHA256, 匹配子域名 (API_URL, 1, 1), HEX解码 (SecretDate), )
SecretSigning = a.取HMAC值 ( #哈希算法_SHA256, “tc3_request”, HEX解码 (SecretService), )
Signature = a.取HMAC值 ( #哈希算法_SHA256, StringToSign, HEX解码 (SecretSigning), )
' 4.拼接 Authorization
Authorization = Algorithm + “ ”“Credential=” + SecretId + “/” + CredentialScope + “, ”“SignedHeaders=” + SignedHeaders + “, ”“Signature=” + Signature
请求头 = 请求头 + “Authorization:” + Authorization + #换行符
请求头 = 请求头 + “Content-Type:application/json”#换行符
请求头 = 请求头 + “Host: ” + API_URL + #换行符
请求头 = 请求头 + “X-TC-Action: SendSms ”#换行符
请求头 = 请求头 + “X-TC-Timestamp:” + RequestTimestamp + #换行符
请求头 = 请求头 + “X-TC-Version: 2021-01-11”#换行符
请求头 = 请求头 + “X-TC-Region: ap-guangzhou”#换行符
请求头 = 请求头 + “X-TC-Language: zh-CN”#换行符
响应文本 = 网页_访问S (“https://” + API_URL, 1, HashedRequestPayload, , , 请求头, , , , , , , , , , , , , , , )
返回 (编码_utf8到gb2312 (响应文本))
子程序名返回值类型公开备 注
匹配子域名文本型 本子程序采用【精易编程助手】生成。成功返回匹配的文本,失败返回空文本。
参数名类 型参考可空数组备 注
源文本文本型欲被匹配的文本
匹配索引整数型表达式的索引,从1开始将代表为子匹配文本的索引。
子匹配索引整数型可空。 子表达式的索引,从1开始将代表为子匹配文本的索引
变量名类 型静态数组备 注
局_正则正则表达式类此类为精易模块里面的正则类,精易模块下载地址:http://ec.125.la/
如果真 (局_正则.创建 (“(\w+).tencentcloudapi.com”, 源文本, 假, 假, 真, ))
信息框 (“正则创建失败,请检查正则表达式语句是否有误!”, #错误图标, , )
返回 (“”)
如果真 (局_正则.取匹配数量 () = 0)
信息框 (“匹配失败,请检检查正则语句是否有误,数量:0”, #错误图标, , )
返回 (“”)
如果真 (匹配索引 < 1)
信息框 (“参数二 - 匹配索引必须大于0。”, #错误图标, , )
返回 (“”)

判断 (匹配索引 > 0 子匹配索引 > 0)  ' 如果 匹配索引 和 子匹配索引 都大于0,则匹配子匹配文本
返回 (局_正则.取子匹配文本 (匹配索引, 子匹配索引, ))

判断 (匹配索引 > 0)  ' 如果只有匹配索引大于0,则返回指定的匹配文本
返回 (局_正则.取匹配文本 (匹配索引, ))


返回 (“”)


i支持库列表   支持库注释   
e2eeE2EE互联网服务器套件



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 1好评 +1 精币 +2 收起 理由
山川 + 1 + 2 感谢分享,很给力!~

查看全部评分

签到天数: 1 天

发表于 2024-8-11 19:16:53 | 显示全部楼层   河北省唐山市
谢谢谢谢
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-4-18 13:40:02 | 显示全部楼层   广东省东莞市
本帖最后由 qiujie117275706 于 2024-4-18 13:44 编辑

官方文档https://cloud.tencent.com/document/product/1729/101843


回复 支持 反对

使用道具 举报

发表于 2024-4-17 22:19:03 | 显示全部楼层   河南省新乡市
谢谢分享
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-4-17 02:11:12 | 显示全部楼层   广东省东莞市
注意:
  • Date 必须从时间戳 X-TC-Timestamp 计算得到,且时区为 UTC+0。如果加入系统本地时区信息,例如东八区,将导致白天和晚上调用成功,但是凌晨时调用必定失败。假设时间戳为 1551113065,在东八区的时间是 2019-02-26 00:44:25,但是计算得到的 Date 取 UTC+0 的日期应为 2019-02-25,而不是 2019-02-26。
  • Timestamp 必须是当前系统时间,且需确保系统时间和标准时间是同步的,如果相差超过五分钟则必定失败。如果长时间不和标准时间同步,可能运行一段时间后,请求失败,返回签名过期错误。



  
CredentialScope = 时间_格式化 (到时间 (时间_时间戳转文本 (到文本 (到长整数 (时间_取现行时间戳 ()) - 28800), 2)), “yyyy-MM-dd”, , 真, )“/”匹配子域名 (API_URL, 1, 1)“/tc3_request”
SecretDate = a.取HMAC值 ( #哈希算法_SHA256, 时间_格式化 (到时间 (时间_时间戳转文本 (到文本 (到长整数 (时间_取现行时间戳 ()) - 28800), 2)), “yyyy-MM-dd”, , 真, ), “TC3” + SecretKey, )

回复 支持 反对

使用道具 举报

结帖率:89% (16/18)

签到天数: 9 天

发表于 2024-4-16 11:26:59 | 显示全部楼层   广东省深圳市
谢谢分享
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表