.net core 借助容联云实现短信验证码

官方网址:

http://www.yuntongxun.com/guide/sms.html

免费测试:

http://www.yuntongxun.com/doc/rest/sms/3_2_1_2.html

 

Demo实例

http://www.yuntongxun.com/doc/rest/sms/3_2_2_3.html

 

其实这个也不是很难,掉官方的sdk即可实现,但是苦逼的是我的项目是.net core ,官方的sdk有好多地方不支持,所以值得重写sdk

先把自己走过的坑补充一下:

出现的问题1:

l  You must add a reference to assembly “mscorlib,Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”


解决办法:使用NuGet包管理安装:

Install-Package Microsoft.NETCore.Portable.Compatibility -Version 1.0.1


出现的问题2

l  对象引用对于非静态的字段,方法或属性



解决办法:

把出现问题的方法改成static即可


出现的问题3:

命名空间System.Net中不存在类型或者命名空间ServicePointManager


自己创建一个ServicePointManager,不要质疑,真的是照着原来的sdk创建了一个一模一样的方法就可以用了


出现的问题4:

 WebHeaderCollection中的Headers未包含Add方法


这个其实是因为后来的WebHeaderCollection中的header可以这样添加:


类似的问题还有:

进行请求:

// 开始请求
                using (Stream postStream = request.GetRequestStream())
                {
                    postStream.Write(byteData, 0, byteData.Length);
                }

在这里要换成:

 var reqStreamAsync = request.GetRequestStreamAsync();
                using(Stream reqStream = reqStreamAsync.Result)
                {
                    reqStream.Write(byteData, 0, byteData.Length);
                    reqStream.Dispose();
                }

获取请求

// 获取请求
                using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
                {
  

换成:

 var reqAsync = request.GetResponseAsync();
                using (HttpWebResponse response = reqAsync.Result as HttpWebResponse)
                {
  
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值