在asp.net中发送多条短信?
Posted
技术标签:
【中文标题】在asp.net中发送多条短信?【英文标题】:sending multiple sms in asp.net? 【发布时间】:2011-03-19 00:41:20 【问题描述】:在我的网络应用程序中,我使用 api 发送短信,它适用于单个电话号码,但我的要求是我想向两个电话号码(手机号码)发送短信,你能帮我吗?当用户来的时候到我的网站并自动注册管理员会收到短信提醒,现在我想同时发送短信。
protected void btnSend_Click(object sender, EventArgs e)
try
mobile =Server.htmlEncode ( txtMobile.Text);
message = Server.HtmlEncode(txtMessage.Text);
username = Server.HtmlEncode(txtName.Text);
password = Server.HtmlEncode(txtPassword.Text);
domian = Server.HtmlEncode(txtDomain.Text);
string result = apicall("http://"+domian+"/pushsms.php?username="+username+"&password="+password+"&sender=&to="+mobile+"&message="+message);
if (!result.StartsWith("Wrong Username or Password"))
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "success", "alert('Message Sent')", true);
else
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "success", "alert('Message Sending Failed')", true);
sentMail()
catch
公共无效已发送邮件() 字符串手机=“9701098107”; 字符串消息=“测试”; 字符串用户名=“xxx”; 字符串密码 = "yyyy"; 字符串 domian = "smsftt.com"; string result1 = apicall("http://" + domian + "/pushsms.php?username=" + username + "&password=" + 密码 + "&sender=&to=" + mobile + "&message=" + message);
public string apicall(string url)
HttpWebRequest httpreq = (HttpWebRequest)WebRequest.Create(url);
try
HttpWebResponse httpres = (HttpWebResponse)httpreq.GetResponse();
StreamReader sr = new StreamReader(httpres.GetResponseStream());
string results = sr.ReadToEnd();
sr.Close();
return results;
catch
return "0";
【问题讨论】:
如果号码存储在一个列表中您可以使用此代码对我来说工作正常,将以下代码保留在函数调用该函数中,并在 CSV 中分隔多个手机号码
string stringpost = "Here username password and type of sms as querystring";
HttpWebRequest objWebRequest = null;
HttpWebResponse objWebResponse = null;
StreamWriter objStreamWriter = null;
StreamReader objStreamReader = null;
try
string stringResult = null;
objWebRequest = (HttpWebRequest)WebRequest.Create("http://'your sms api'");
objWebRequest.Method = "POST";
objWebRequest.ContentType = "application/x-www-form-urlencoded";
objStreamWriter = new StreamWriter(objWebRequest.GetRequestStream());
objStreamWriter.Write(stringpost);
objStreamWriter.Flush();
objStreamWriter.Close();
objWebResponse = (HttpWebResponse)objWebRequest.GetResponse();
objWebResponse = (HttpWebResponse)objWebRequest.GetResponse();
objStreamReader = new StreamReader(objWebResponse.GetResponseStream());
stringResult = objStreamReader.ReadToEnd();
objStreamReader.Close();
return (stringResult);
catch (Exception ex)
return (ex.ToString());
finally
if ((objStreamWriter != null))
objStreamWriter.Close();
if ((objStreamReader != null))
objStreamReader.Close();
objWebRequest = null;
objWebResponse = null;
【讨论】:
【参考方案2】:这不就像用不同的细节再次制作那个 apicall 一样简单吗?更改您传递的手机号码并完成工作......
【讨论】:
我写了一个方法,在发送第一条短信时调用该 API 代码,然后调用第二条短信,但它没有发送 @Surya sasidhar:我不知道你用谁来发送短信,但它们是否有可能以某种方式限制你,所以你不能发送超过一个数量有限的短信时间(例如每秒一个)。与上面显示的代码相比,这似乎更可能是您的问题所在。或者,您的 apicall 方法中存在错误,您需要向我们展示代码。如果没有全貌,就很难找出问题所在。 @Surya sasidhar:您的代码看起来不错。我建议调试您更仔细地分析您从呼叫中得到的响应是什么。您只检查“错误的用户名或密码”。尝试在失败时将结果放入警报中,以便您可以准确地看到服务器在说什么。我猜这类似于“电话太多”,旨在阻止短信发送的快速自动化。如果是这种情况,您将必须找出时间限制,并制定某种排队系统以确保您的呼叫不会太快。另一个测试是两个同时注册。 是的,工作正常,克里斯先生,我收到两条消息,感谢您的回复和所有事情以上是关于在asp.net中发送多条短信?的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET 点击前台服务器按钮后, 刷新. 重新执行 按钮事件