官方网址:
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:
l 命名空间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)
{