使用VB语言调用短信接口发送验证码短信教程

VB语言对接验证码短信接口DEMO示例

圆点
&lt;p&gt;&lt;img title="使用VB语言调用短信接口发送验证码短信教程(图1)" alt="使用VB语言调用短信接口发送验证码短信教程(图1)" src="/uploads/allimg/20240526/1-2405262334053U.jpeg" /&gt;&lt;/p&gt; &lt;p&gt;开发过程中,注册、登录这类操作经常要发验证码短信。这篇文章讲怎么用 VB(Visual Basic)调用短信接口,把验证码短信发出去。接口选用 &lt;code&gt;https://api.3yit.com/api/send-sms-single&lt;/code&gt;,通过 POST 请求携带参数,从返回结果里拿到发送状态。&lt;/p&gt; &lt;h2&gt;准备工作&lt;/h2&gt; &lt;p&gt;开始之前,先确认已经拿到短信服务商的接口文档,弄明白 &lt;code&gt;sp_id&lt;/code&gt;、&lt;code&gt;password&lt;/code&gt;(或签名算法)等关键信息,同时确认开发环境支持 VB。&lt;/p&gt; &lt;h2&gt;获取接口参数&lt;/h2&gt; &lt;p&gt;登录智慧云信官网,选择对应的产品(如【验证码】),在上方选项卡中点击【开发者】→【HTTP开发文档】,就能看到具体的 API 方法名称,以及各参数的 key 和对应值,通常包括 &lt;code&gt;sp_id&lt;/code&gt;、&lt;code&gt;mobile&lt;/code&gt;、&lt;code&gt;content&lt;/code&gt;、&lt;code&gt;password&lt;/code&gt; 等。各参数含义如下:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;code&gt;sp_id&lt;/code&gt;:产品编号,全局唯一,一般由 6 位数字组成。&lt;/li&gt;&lt;li&gt;&lt;code&gt;mobile&lt;/code&gt;:接收短信的手机号码。&lt;/li&gt;&lt;li&gt;&lt;code&gt;content&lt;/code&gt;:短信内容,包含签名和正文。例如“【智慧云信】您的验证码是456790,请妥善保管”,其中【智慧云信】是签名,需在签名报备中申请;后面的提示语是短信模板,需在模板报备中申请,审核通过后才能发送。&lt;/li&gt;&lt;li&gt;&lt;code&gt;password&lt;/code&gt;:用 SP_ID 密码经 MD5 加密后生成的接口密码(非登录密码),由 32 位随机字符串组成。&lt;/li&gt;&lt;/ul&gt; &lt;h2&gt;编写 VB 代码&lt;/h2&gt; &lt;p&gt;下面是用 VB 调用短信接口发送验证码短信的示例代码:&lt;/p&gt; &lt;pre&gt;&lt;code&gt;' 引入必要的命名空间 Imports System Imports System.IO Imports System.Net Imports System.Text Imports System.Web.script.Serialization Module Module1 Sub Main() ' 接口配置信息 Dim apiUrl As String = "https://api.3yit.com/api/send-sms-single" Dim spId As String = "5xxxxx" ' 从接口文档中获取 Dim password As String = "xxxxxxxxxxx" ' 32位md5处理后的密码,从接口文档中获取 ' 待发送的手机号和短信内容(假设验证码为123456) Dim mobile As String = "176xxxxxxxx" Dim content As String = "【签名】验证码:123456" ' 构建请求参数 Dim postData As New StringBuilder() postData.Append("sp_id=").Append(spId).Append("&amp;amp;") postData.Append("mobile=").Append(mobile).Append("&amp;amp;") postData.Append("content=").Append(content).Append("&amp;amp;") ' 如果使用密码方式,则添加password参数 postData.Append("password=").Append(password) ' 发送POST请求 Dim request As HttpWebRequest = WebRequest.Create(apiUrl) As HttpWebRequest request.Method = "POST" request.ContentType = "application/x-www-form-urlencoded" Using writer As StreamWriter = New StreamWriter(request.GetRequestStream()) writer.Write(postData.ToString()) End Using ' 获取响应 Dim response As HttpWebResponse = request.GetResponse() As HttpWebResponse Dim responseStream As Stream = response.GetResponseStream() Dim reader As New StreamReader(responseStream) ' 读取响应内容并转换为JSON对象 Dim responseString As String = reader.ReadToEnd() Dim serializer As New JavaScriptSerializer() Dim responseObject As Object = serializer.DeserializeObject(responseString) ' 提取返回结果中的关键信息 Dim code As Integer = Convert.ToInt32(responseObject("code")) Dim msg As String = responseObject("msg") Dim msgId As String = responseObject("msg_id") ' 输出结果 Console.WriteLine("发送结果:") Console.WriteLine("code: " &amp;amp; code) Console.WriteLine("msg: " &amp;amp; msg) Console.WriteLine("msg_id: " &amp;amp; msgId) ' 判断发送是否成功 If code = 0 Then Console.WriteLine("验证码发送成功,msg_id: " &amp;amp; msgId) Else Console.WriteLine("发送失败:" &amp;amp; msg) End If ' 关闭响应流和响应对象 responseStream.Close() response.Close() End Sub End Module&lt;/code&gt;&lt;/pre&gt; &lt;h2&gt;代码说明&lt;/h2&gt; &lt;ul&gt;&lt;li&gt;引入命名空间:开头引入网络请求和 JSON 序列化相关的命名空间。&lt;/li&gt;&lt;li&gt;接口配置信息:代码里定义了接口地址、&lt;code&gt;sp_id&lt;/code&gt; 和 &lt;code&gt;password&lt;/code&gt;,使用时替换成自己的值。&lt;/li&gt;&lt;li&gt;构建请求参数:用 &lt;code&gt;StringBuilder&lt;/code&gt; 把 &lt;code&gt;sp_id&lt;/code&gt;、&lt;code&gt;mobile&lt;/code&gt;、&lt;code&gt;content&lt;/code&gt;、&lt;code&gt;password&lt;/code&gt; 拼成查询字符串。&lt;/li&gt;&lt;li&gt;发送 POST 请求:用 &lt;code&gt;HttpWebRequest&lt;/code&gt; 发送,设置请求方法和请求头,再用 &lt;code&gt;StreamWriter&lt;/code&gt; 把参数写入请求流。&lt;/li&gt;&lt;li&gt;获取响应:通过 &lt;code&gt;HttpWebResponse&lt;/code&gt; 拿到响应流,用 &lt;code&gt;StreamReader&lt;/code&gt; 读取响应内容并转成 JSON 对象,提取 &lt;code&gt;code&lt;/code&gt;、&lt;code&gt;msg&lt;/code&gt;、&lt;code&gt;msg_id&lt;/code&gt; 字段。&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;到这里,用 VB 调短信接口发验证码的流程就走通了,实际项目里按自己的界面和业务需求调整即可。&lt;/p&gt; &lt;p&gt;&lt;strong&gt;其他语言教程:&lt;/strong&gt;&lt;a href="https://www.3yit.com/smsapi/262.html" title="PHP短信接口教程"&gt;PHP&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/282.html" title="Java短信接口教程"&gt;Java&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/283.html" title="ASP短信接口教程"&gt;ASP&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/284.html" title="ASP.NET(C#)短信接口教程"&gt;ASP.NET(C#)&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/285.html" title="JSP短信接口教程"&gt;JSP&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/286.html" title="Node.js短信接口教程"&gt;Node.js&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/298.html" title="Delphi短信接口教程"&gt;Delphi&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/300.html" title="Go短信接口教程"&gt;Go&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/301.html" title="Python短信接口教程"&gt;Python&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/302.html" title="Ruby短信接口教程"&gt;Ruby&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/303.html" title="Shell短信接口教程"&gt;Shell&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/305.html" title="C++短信接口教程"&gt;C++&lt;/a&gt; · &lt;a href="https://www.3yit.com/smsapi/306.html" title="C短信接口教程"&gt;C&lt;/a&gt;。更多信息见&lt;a href="https://www.3yit.com/smsapi/613.html" title="短信API接入指南"&gt;短信API接入指南&lt;/a&gt;。&lt;/p&gt; <p>代码里的 API 地址、账号和密码替换成你自己的就能跑通。如果还没有账号,去智慧云信官网注册一个,注册就能免费测试,验证码、通知、营销短信都支持。</p>
内容可信度说明

作者:智慧云信通信技术团队

技术审核:国际短信与号码检测产品组

最后更新:2026-08-13

本文主题:使用VB语言调用短信接口发送验证码短信教程

本文围绕「使用VB语言调用短信接口发送验证码短信教程」展开,结合智慧云信平台在短信接口API场景下的产品能力与客户接入经验整理。不同国家/地区的 Sender ID、模板审核、计费方式和合规要求可能变化,实际发送前建议以当前通道审核与项目沟通结果为准。