雪中幸存者 LV
发表于 2025-4-27 15:25:22
DeepSeek在过年这段时间出圈了,太火了,也来尝试下用VBA测试一下它的代码能力
我使用Access VBA, 其实Excel VBA也是相通的。大家也可自己测试
一、DeepSeek简介
DeepSeek是一家创新型科技公司,成立于2023年7月17日,总部位于中国浙江省杭州市拱墅区。这家公司专注于开发先进的大语言模型(LLM)和相关技术,并在短时间内取得了显著的进展。
主要产品和发展历程
- DeepSeek LLM:这是DeepSeek的第一个大模型,包含670亿参数,从零开始在一个包含2万亿token的数据集上进行了训练,数据集涵盖中英文。它展现了显著的泛化能力,在多个基准测试中表现出色。
- DeepSeek-Coder:一个专注于代码生成、调试和数据分析的开源模型,支持多种编程语言。
- DeepSeek-V2:第二代开源Mixture-of-Experts(MoE)模型,总参数达2360亿,以经济高效的训练和推理为特点。
- DeepSeek-V3:这是DeepSeek的又一个重大突破,总参数达6710亿,采用创新的MoE架构和FP8混合精度训练,训练成本仅为557.6万美元。它在开源模型中位列榜首,与世界上最先进的闭源模型不分伯仲。
- DeepSeek-R1:新一代推理模型,性能与OpenAI的o1正式版持平,并已经开源。
公司背景和技术支持
DeepSeek由知名量化资管巨头幻方量化创立,后者为DeepSeek的技术研发提供了强大的硬件支持,如储备万张A100芯片。此外,DeepSeek的模型设计和训练过程采用了多项创新技术,如混合专家架构、FP8混合精度训练等,这些技术使其在性能和效率上取得了显著的突破。
市场表现和社会影响
DeepSeek在短时间内迅速崛起,不仅在国内市场取得了显著成绩,还在国际市场上引起了广泛关注。例如,DeepSeek应用曾登顶苹果美国地区应用商店免费APP下载排行榜,在美区下载榜上超越了ChatGPT。同时,DeepSeek的发布也引起了AI业内的广泛高度关注,被视为AI大模型应用逐步走向普惠的重要标志。
然而,DeepSeek的快速发展也引起了美国等国家的关注和担忧。有报道称,美国对DeepSeek的影响开展国家安全调查,并称其为“偷窃”。
总的来说,DeepSeek是一家充满活力和创新精神的AI公司,其在AI领域的快速发展和显著成就值得关注。然而,随着其在全球市场上的影响力日益扩大,也需要面对更多的挑战和竞争
二、初步测试(没有使用尝试思考R1)
现在DeepSeek必须先用手机注册才能回答问题,使用手机及验证码,就可快速注册成功。今天速度还是挺快的。
提问:Access 如何使用腾讯云鉴权API
回答结果:
腾讯云鉴权API主要用于对腾讯云服务的请求进行身份验证和权限控制。通常,腾讯云的API请求需要使用签名(Signature)来验证请求的合法性。以下是使用腾讯云鉴权API的基本步骤:
<hr/>1. 准备工作
在使用腾讯云鉴权API之前,你需要完成以下准备工作:
- 注册腾讯云账号:如果没有腾讯云账号,需要先注册一个。
- 获取API密钥:登录腾讯云控制台,进入API密钥管理页面,获取SecretId和SecretKey。
- SecretId:用于标识API调用者身份。
- SecretKey:用于生成请求签名,务必保密。
- 确定服务地域和API接口:根据你要调用的腾讯云服务,确定服务的地域(如ap-beijing)和具体的API接口。
<hr/>2. 腾讯云API请求签名流程
腾讯云的API请求需要使用签名方法HMAC-SHA256或TC3-HMAC-SHA256来生成签名。以下是签名的基本流程:
2.1 签名方法 v1(HMAC-SHA256)
- 参数排序:将请求参数按字典序排序。
- 拼接字符串:将排序后的参数拼接成字符串。
- 生成签名:使用HMAC-SHA256算法,以SecretKey为密钥,对拼接的字符串进行加密。
- 将签名加入请求:将生成的签名作为Signature参数加入请求中。
2.2 签名方法 v3(TC3-HMAC-SHA256)
腾讯云推荐使用TC3-HMAC-SHA256签名方法,步骤如下:
- 生成规范请求(CanonicalRequest):
- HTTP方法(如POST)。
- URI路径(如/)。
- 查询字符串(如Action=DescribeInstances&Version=2017-03-12)。
- 请求头(如content-type:application/json)。
- 哈希后的请求体(如hashedRequestPayload)。
- 签名算法(如TC3-HMAC-SHA256)。
- 请求时间戳(如2023-10-01T12:00:00Z)。
- 凭证范围(如2023-10-01/cvm/tc3_request)。
- 哈希后的规范请求。
- 使用SecretKey生成签名密钥。
- 使用签名密钥对StringToSign进行签名。
<hr/>3. 示例:使用TC3-HMAC-SHA256签名调用API
以下是一个调用腾讯云CVM(云服务器)API的示例。
3.1 请求参数
- Action:DescribeInstances(查询云服务器实例)。
- Version:2017-03-12(API版本)。
- Region:ap-beijing(地域)。
- Timestamp:当前时间戳(如1696147200)。
- Nonce:随机数(如123456)。
3.2 生成签名
- 规范请求:
plaintext
复制
POST / content-type:application/json; charset=utf-8 host:http://cvm.tencentcloudapi.com content-type;host e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
- 待签名字符串:
plaintext
复制
TC3-HMAC-SHA256 2023-10-01T12:00:00Z 2023-10-01/cvm/tc3_request 5f3c5e6e7f8e9d0a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0i1j2k3l4
- 生成签名:
- 使用SecretKey生成签名密钥。
- 对StringToSign进行签名。
3.3 发送请求
将签名加入Authorization请求头,发送HTTP请求。
bash
复制
curl -X POST &#34;https://cvm.tencentcloudapi.com&#34; \ -H &#34;Authorization: TC3-HMAC-SHA256 Credential=AKIDEXAMPLE/2023-10-01/cvm/tc3_request, SignedHeaders=content-type;host, Signature=5f3c5e6e7f8e9d0a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0i1j2k3l4&#34; \ -H &#34;Content-Type: application/json; charset=utf-8&#34; \ -H &#34;Host: http://cvm.tencentcloudapi.com&#34; \ -d &#39;{ &#34;Action&#34;: &#34;DescribeInstances&#34;, &#34;Version&#34;: &#34;2017-03-12&#34;, &#34;Region&#34;: &#34;ap-beijing&#34; }&#39;
<hr/>4. 腾讯云SDK
如果你不想手动实现签名逻辑,可以使用腾讯云官方提供的SDK。腾讯云支持多种编程语言的SDK,如Python、Java、Go、Node.js等。
示例:使用Python SDK调用API
- 安装SDK:
bash
复制
pip install tencentcloud-sdk-python
- 调用API:
python
复制
from tencentcloud.common import credential from tencentcloud.common.profile.client_profile import ClientProfile from tencentcloud.common.profile.http_profile import HttpProfile from tencentcloud.cvm.v20170312 import cvm_client, models # 设置SecretId和SecretKey cred = credential.Credential(&#34;your-secret-id&#34;, &#34;your-secret-key&#34;) # 创建客户端 http_profile = HttpProfile() http_profile.endpoint = &#34;http://cvm.tencentcloudapi.com&#34; client_profile = ClientProfile() client_profile.httpProfile = http_profile client = cvm_client.CvmClient(cred, &#34;ap-beijing&#34;, client_profile) # 创建请求对象 req = models.DescribeInstancesRequest() # 调用API resp = client.DescribeInstances(req) print(resp.to_json_string())
<hr/>5. 注意事项
- 保护SecretKey:SecretKey是生成签名的关键,务必保密,不要泄露。
- API调用频率限制:腾讯云API有调用频率限制,超出限制可能会导致请求失败。
- 使用HTTPS:建议使用HTTPS协议发送请求,确保数据安全。
- 参考官方文档:腾讯云的API和签名方法可能会更新,建议参考腾讯云API文档获取最新信息。
<hr/>通过以上步骤,你可以成功使用腾讯云鉴权API调用腾讯云服务。如果需要更复杂的操作,可以参考腾讯云的官方文档或使用SDK简化开发。
三、深入测试(使用尝试思考R1)
尝试使用联网搜索,可能因为最近DeepSeek官网访问量大或受到攻击,联网搜索联网搜索服务繁忙,响应有问题,提示这个
只能勾选 深度思考 这个选项
分析难点
好的,我现在需要帮助用户解决如何在Access VBA中使用腾讯云鉴权API的问题。首先,我需要回顾之前的对话历史,看看用户之前问了什么,以及我之前给出的回答。用户之前询问了企业微信API的使用方法,接着又问了腾讯云鉴权API的一般使用方法,现在具体到如何在Access VBA中实现这一点。
首先,用户可能是在开发一个基于Access的应用程序,需要集成腾讯云的服务。Access VBA虽然功能有限,但可以通过HTTP请求与外部API交互。用户可能对VBA不太熟悉,特别是处理JSON和加密签名方面,因此需要详细且步骤清晰的指导。
接下来,我需要分析用户的需求。用户想知道如何在VBA中调用腾讯云鉴权API,这涉及到生成签名、发送HTTP请求和处理响应。腾讯云的鉴权机制比较复杂,尤其是TC3-HMAC-SHA256签名方法,这对VBA来说可能比较困难,因为VBA本身没有内置的加密库,需要调用Windows API或其他第三方库。
我需要考虑用户可能的痛点:如何生成正确的签名,如何处理HTTP请求,特别是POST请求,如何解析JSON响应。此外,用户可能没有使用过腾讯云SDK,或者因为环境限制无法安装SDK,所以需要纯VBA的实现方法。
接下来,我需要回顾之前关于腾讯云鉴权的回答,其中提到了使用SDK和手动生成签名两种方法。但在VBA中,可能无法直接使用腾讯云的官方SDK,所以必须手动实现签名过程。这可能涉及到Base64编码、HMAC-SHA256加密等步骤,而这些在VBA中需要借助外部库或自定义函数。
我需要确定在VBA中实现HMAC-SHA256的可能方法。可能需要使用Microsoft的XML库(MSXML2.ServerXMLHTTP)发送HTTP请求,使用VBA-JSON库来处理JSON数据,以及使用Windows API中的加密函数(如Cryptographic Service Provider)来实现HMAC-SHA256加密。或者,可以找到已有的VBA代码示例来实现这些加密功能。
另外,需要注意腾讯云API的签名版本,推荐使用TC3-HMAC-SHA256,这可能比v1版本更复杂,但更安全。用户可能需要逐步生成规范请求、待签名字符串,并计算签名。
在步骤分解上,我需要指导用户如何获取SecretId和SecretKey,生成必要的时间戳和随机数,构建规范请求,计算签名,并将签名添加到HTTP请求头中。同时,还需要处理可能的错误,比如签名错误、API限流等。
可能的挑战是VBA对字符串处理和加密功能的支持有限,需要引入外部库或编写复杂的自定义函数。例如,HMAC-SHA256在VBA中实现可能需要调用Cryptographic API,或者使用.NET的类库通过COM接口调用,但这可能超出用户的技术范围。因此,可能需要提供一个简化的方法,或者推荐使用现成的代码片段。
此外,用户可能需要处理JSON的序列化和反序列化,这在VBA中可以通过使用JSONConverter库来实现,需要指导用户如何引用并正确使用这个库。
最后,需要提供一个完整的示例代码,包括所有必要的函数和步骤,让用户能够复制粘贴并替换自己的SecretId、SecretKey和其他参数,然后测试是否能成功调用腾讯云API。同时,提醒用户注意保护敏感信息,如SecretKey,避免硬编码在代码中,或者建议从安全的位置获取这些信息。
总结来说,我需要提供一个分步指南,详细说明如何在VBA中生成签名、发送HTTP请求,并处理响应,同时解决可能遇到的技术难点,如加密和JSON处理,确保用户能够在Access VBA中成功集成腾讯云鉴权API。
在 Access VBA 中使用腾讯云鉴权 API 需要手动实现签名逻辑(如 TC3-HMAC-SHA256),并通过 HTTP 请求调用腾讯云接口。以下是详细步骤和代码示例:
<hr/>1. 准备工作
- 登录腾讯云控制台,进入 API 密钥管理,获取 SecretId 和 SecretKey。
- 在 VBA 编辑器中,依次点击 工具 → 引用,勾选以下库:
- Microsoft XML, v6.0(用于发送 HTTP 请求)
- Microsoft Scripting Runtime(用于 JSON 处理,需配合 JSON 解析库)
- 下载并导入 VBA-JSON 库以简化 JSON 处理。
<hr/>2. 实现 HMAC-SHA256 签名
由于 VBA 原生不支持 HMAC-SHA256,需借助 Windows API 或自定义函数。以下是基于 Windows API 的实现:
代码模块:HMAC_SHA256.bas
- &#39; 需要引用 &#34;Microsoft Scripting Runtime&#34; 和 &#34;Microsoft XML, v6.0&#34;
- Option Explicit
- Private Declare PtrSafe Function CryptAcquireContext Lib &#34;advapi32.dll&#34; _
- Alias &#34;CryptAcquireContextA&#34; (ByRef phProv As LongPtr, _
- ByVal pszContainer As String, ByVal pszProvider As String, _
- ByVal dwProvType As Long, ByVal dwFlags As Long) As Long
- Private Declare PtrSafe Function CryptCreateHash Lib &#34;advapi32.dll&#34; _
- (ByVal hProv As LongPtr, ByVal Algid As Long, _
- ByVal hKey As LongPtr, ByVal dwFlags As Long, _
- ByRef phHash As LongPtr) As Long
- Private Declare PtrSafe Function CryptHashData Lib &#34;advapi32.dll&#34; _
- (ByVal hHash As LongPtr, ByVal pbData As LongPtr, _
- ByVal dwDataLen As Long, ByVal dwFlags As Long) As Long
- Private Declare PtrSafe Function CryptDeriveKey Lib &#34;advapi32.dll&#34; _
- (ByVal hProv As LongPtr, ByVal Algid As Long, _
- ByVal hBaseData As LongPtr, ByVal dwFlags As Long, _
- ByRef phKey As LongPtr) As Long
- Private Declare PtrSafe Function CryptDestroyHash Lib &#34;advapi32.dll&#34; _
- (ByVal hHash As LongPtr) As Long
- Private Declare PtrSafe Function CryptDestroyKey Lib &#34;advapi32.dll&#34; _
- (ByVal hKey As LongPtr) As Long
- Private Declare PtrSafe Function CryptReleaseContext Lib &#34;advapi32.dll&#34; _
- (ByVal hProv As LongPtr, ByVal dwFlags As Long) As Long
- Private Const PROV_RSA_AES As Long = 24
- Private Const CRYPT_VERIFYCONTEXT As Long = &HF0000000
- Private Const CALG_SHA_256 As Long = &H800C
- Private Const CALG_HMAC As Long = &H8009
- &#39; HMAC-SHA256 函数
- Public Function ComputeHMACSHA256(ByVal sMessage As String, ByVal sKey As String) As String
- Dim hProv As LongPtr, hHash As LongPtr, hKey As LongPtr
- Dim bData() As Byte, bKey() As Byte
- Dim lRet As Long
- Dim bHash() As Byte
- Dim i As Long
-
- &#39; 初始化 CryptoAPI
- If CryptAcquireContext(hProv, 0, 0, PROV_RSA_AES, CRYPT_VERIFYCONTEXT) = 0 Then
- ComputeHMACSHA256 = &#34;Error: CryptAcquireContext&#34;
- Exit Function
- End If
-
- &#39; 创建 HMAC 密钥
- bKey = StrConv(sKey, vbFromUnicode)
- If CryptCreateHash(hProv, CALG_HMAC, 0, 0, hHash) = 0 Then
- ComputeHMACSHA256 = &#34;Error: CryptCreateHash&#34;
- CryptReleaseContext hProv, 0
- Exit Function
- End If
-
- &#39; 设置 HMAC 密钥
- If CryptHashData(hHash, VarPtr(bKey(0)), UBound(bKey) + 1, 0) = 0 Then
- ComputeHMACSHA256 = &#34;Error: CryptHashData&#34;
- CryptDestroyHash hHash
- CryptReleaseContext hProv, 0
- Exit Function
- End If
-
- If CryptDeriveKey(hProv, CALG_SHA_256, hHash, 0, hKey) = 0 Then
- ComputeHMACSHA256 = &#34;Error: CryptDeriveKey&#34;
- CryptDestroyHash hHash
- CryptReleaseContext hProv, 0
- Exit Function
- End If
-
- &#39; 计算 HMAC
- bData = StrConv(sMessage, vbFromUnicode)
- If CryptCreateHash(hProv, CALG_SHA_256, hKey, 0, hHash) = 0 Then
- ComputeHMACSHA256 = &#34;Error: CryptCreateHash&#34;
- CryptDestroyKey hKey
- CryptReleaseContext hProv, 0
- Exit Function
- End If
-
- If CryptHashData(hHash, VarPtr(bData(0)), UBound(bData) + 1, 0) = 0 Then
- ComputeHMACSHA256 = &#34;Error: CryptHashData&#34;
- CryptDestroyHash hHash
- CryptDestroyKey hKey
- CryptReleaseContext hProv, 0
- Exit Function
- End If
-
- &#39; 获取 HMAC 结果
- ReDim bHash(31) &#39; SHA-256 输出 32 字节
- If CryptGetHashParam(hHash, HP_HASHVAL, bHash(0), 32, 0) = 0 Then
- ComputeHMACSHA256 = &#34;Error: CryptGetHashParam&#34;
- Else
- ComputeHMACSHA256 = BytesToHex(bHash)
- End If
-
- &#39; 清理资源
- CryptDestroyHash hHash
- CryptDestroyKey hKey
- CryptReleaseContext hProv, 0
- End Function
- Private Function BytesToHex(bData() As Byte) As String
- Dim i As Long
- BytesToHex = &#34;&#34;
- For i = 0 To UBound(bData)
- BytesToHex = BytesToHex & Right$(&#34;0&#34; & Hex(bData(i)), 2)
- Next
- End Function
复制代码 <hr/>3. 调用腾讯云 API(示例:查询 CVM 实例)
代码模块:Main.bas
- Option Explicit
- Public Sub CallTencentCloudAPI()
- Dim SecretId As String
- Dim SecretKey As String
- Dim Service As String
- Dim Host As String
- Dim Region As String
- Dim Action As String
- Dim Version As String
- Dim Timestamp As String
- Dim CanonicalRequest As String
- Dim StringToSign As String
- Dim Signature As String
- Dim AuthHeader As String
- Dim Payload As String
- Dim Response As String
-
- &#39; 配置参数
- SecretId = &#34;your-secret-id&#34; &#39; 替换为你的 SecretId
- SecretKey = &#34;your-secret-key&#34; &#39; 替换为你的 SecretKey
- Service = &#34;cvm&#34; &#39; 服务名称(如 cvm、vpc)
- Host = &#34;cvm.tencentcloudapi.com&#34;
- Region = &#34;ap-beijing&#34; &#39; 地域
- Action = &#34;DescribeInstances&#34; &#39; API 动作
- Version = &#34;2017-03-12&#34; &#39; API 版本
-
- &#39; 生成时间戳(UTC 格式)
- Timestamp = Format(Now, &#34;yyyy-mm-ddThh:nn:ssZ&#34;)
-
- &#39; 1. 构建规范请求(CanonicalRequest)
- CanonicalRequest = _
- &#34;POST&#34; & vbLf & _
- &#34;/&#34; & vbLf & _
- &#34;&#34; & vbLf & _
- &#34;content-type:application/json; charset=utf-8&#34; & vbLf & _
- &#34;host:&#34; & Host & vbLf & _
- vbLf & _
- &#34;content-type;host&#34; & vbLf & _
- HexHash(&#34;&#34;) &#39; 请求体为空时哈希值为 SHA-256(&#34;&#34;)
-
- &#39; 2. 构建待签名字符串(StringToSign)
- StringToSign = _
- &#34;TC3-HMAC-SHA256&#34; & vbLf & _
- Timestamp & vbLf & _
- Format(Now, &#34;yyyy-mm-dd&#34;) & &#34;/&#34; & Service & &#34;/tc3_request&#34; & vbLf & _
- HexHash(CanonicalRequest)
-
- &#39; 3. 生成签名
- Signature = ComputeTC3Signature(SecretKey, Format(Now, &#34;yyyy-mm-dd&#34;), Service, StringToSign)
-
- &#39; 4. 构建 Authorization 请求头
- AuthHeader = &#34;TC3-HMAC-SHA256 &#34; & _
- &#34;Credential=&#34; & SecretId & &#34;/&#34; & Format(Now, &#34;yyyy-mm-dd&#34;) & &#34;/&#34; & Service & &#34;/tc3_request, &#34; & _
- &#34;SignedHeaders=content-type;host, &#34; & _
- &#34;Signature=&#34; & Signature
-
- &#39; 5. 发送 HTTP 请求
- Payload = &#34;{&#34;&#34;Action&#34;&#34;: &#34;&#34;&#34; & Action & &#34;&#34;&#34;, &#34;&#34;Version&#34;&#34;: &#34;&#34;&#34; & Version & &#34;&#34;&#34;, &#34;&#34;Region&#34;&#34;: &#34;&#34;&#34; & Region & &#34;&#34;&#34;}&#34;
- Response = SendHttpRequest(Host, Payload, AuthHeader)
-
- &#39; 6. 输出结果
- Debug.Print Response
- End Sub
- &#39; 辅助函数:发送 HTTP POST 请求
- Private Function SendHttpRequest(Host As String, Payload As String, AuthHeader As String) As String
- Dim http As New MSXML2.ServerXMLHTTP60
- http.Open &#34;POST&#34;, &#34;https://&#34; & Host, False
- http.setRequestHeader &#34;Content-Type&#34;, &#34;application/json; charset=utf-8&#34;
- http.setRequestHeader &#34;Authorization&#34;, AuthHeader
- http.send Payload
- SendHttpRequest = http.responseText
- End Function
- &#39; 辅助函数:计算 TC3-HMAC-SHA256 签名
- Private Function ComputeTC3Signature(SecretKey As String, DateStamp As String, Service As String, StringToSign As String) As String
- Dim kDate As String
- Dim kService As String
- Dim kSigning As String
-
- &#39; 1. 计算 kDate = HMAC_SHA256(&#34;TC3&#34; + SecretKey, DateStamp)
- kDate = ComputeHMACSHA256(DateStamp, &#34;TC3&#34; & SecretKey)
-
- &#39; 2. 计算 kService = HMAC_SHA256(kDate, Service)
- kService = ComputeHMACSHA256(Service, HexToBytes(kDate))
-
- &#39; 3. 计算 kSigning = HMAC_SHA256(kService, &#34;tc3_request&#34;)
- kSigning = ComputeHMACSHA256(&#34;tc3_request&#34;, HexToBytes(kService))
-
- &#39; 4. 计算最终签名 = HMAC_SHA256(kSigning, StringToSign)
- ComputeTC3Signature = ComputeHMACSHA256(StringToSign, HexToBytes(kSigning))
- End Function
- &#39; 辅助函数:将十六进制字符串转换为字节数组
- Private Function HexToBytes(hexStr As String) As Byte()
- Dim bytes() As Byte
- Dim i As Long
- ReDim bytes(Len(hexStr) \ 2 - 1)
- For i = 0 To Len(hexStr) \ 2 - 1
- bytes(i) = CByte(&#34;&H&#34; & Mid(hexStr, i * 2 + 1, 2))
- Next
- HexToBytes = bytes
- End Function
- &#39; 辅助函数:计算字符串的 SHA-256 哈希(十六进制)
- Private Function HexHash(inputStr As String) As String
- Dim bytes() As Byte
- bytes = StrConv(inputStr, vbFromUnicode)
- HexHash = ComputeHMACSHA256(inputStr, &#34;&#34;)
- End Function
复制代码 <hr/>4. 关键说明
- TC3-HMAC-SHA256 签名需要分步骤生成密钥链(kDate, kService, kSigning)。
- 需确保时间戳、地域、服务名称与请求一致。
- 使用 MSXML2.ServerXMLHTTP60 发送 POST 请求。
- 请求头需包含 Authorization 和 Content-Type。
- 检查 SecretId 和 SecretKey 是否正确。
- 验证时间戳格式是否为 UTC(如 2023-10-01T12:00:00Z)。
- 使用腾讯云 API 文档中的错误码进行调试。
<hr/>5. 注意事项
- 安全风险:避免在代码中硬编码 SecretKey,建议从安全存储(如数据库或配置文件)动态读取。
- 性能优化:频繁调用 API 时,需缓存 Access Token 或复用签名逻辑。
- API 限制:遵守腾讯云的API 调用频率限制。
通过以上代码,你可以在 Access VBA 中实现腾讯云鉴权 API 的调用。
总体来讲,还是有板有眼,代码的整体逻辑还是大致正确的。感觉比chatGpt不相上下,另因为问题与国内的腾讯云相关,回答的答案更加精准。
大家也可收藏 点赞及关注我们 @人工智能头条 |
|