用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;
        }