用sendcloud来发邮件
平时发验证码邮件都是用免费域名邮箱,但是有时一频繁发多了就发不了了,听说用sendcloud可以避免,还能避免阿里云邮件发QQ邮箱进垃圾箱中,去注册了下,免费账户号每个月才50封,自己玩玩可以吧。。
收费的话一个月59,1万封以内的,不知道行不行。。先看看吧。。
下面是封装好的代码,那个api_user和api_key进网页里设置就好了
/*
* SendMailBySendCloud
* 功能:使用SendCloud发送邮件
* 返回值:string,JSON格式的返回值,或者异常
* 参数:
* from - 显示的发件人邮箱
* to - 收件人邮箱
* title - 邮件标题
* content - 邮件内容
*/
public static string SendMailBySendCloud(String from, String to,
String title, String content, string api_user = "niuna?????", string
api_key = "v2?????")
{
String url = "http://api.sendcloud.net/apiv2/mail/send";
HttpClient client = null;
HttpResponseMessage response = null;
string result;
try
{
client = new HttpClient();
List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
paramList.Add(new KeyValuePair<string, string>("apiUser", api_user));
paramList.Add(new KeyValuePair<string, string>("apiKey", api_key));
paramList.Add(new KeyValuePair<string, string>("from", from));
paramList.Add(new KeyValuePair<string, string>("fromName", from));
paramList.Add(new KeyValuePair<string, string>("to", to));
paramList.Add(new KeyValuePair<string, string>("subject", title));
paramList.Add(new KeyValuePair<string, string>("html", content));
response = client.PostAsync(url, new FormUrlEncodedContent(paramList)).Result;
result = response.Content.ReadAsStringAsync().Result;
//Console.WriteLine(result);
}
catch (Exception e)
{
result = e.Message;
Console.WriteLine("\nException Caught!");
Console.WriteLine("Message :{0} ", e.Message);
}
finally
{
if (null != client)
{
client.Dispose();
}
}
return result;
}