首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

关于jQuery与webservice,该如何处理

2012-10-21 
关于jQuery与webservice各位好!我现在有一个比较麻烦的问题,具体内容如下:我在asp.net页面中使用了jQuery

关于jQuery与webservice
各位好!
我现在有一个比较麻烦的问题,具体内容如下:
我在asp.net页面中使用了jQuery来调用后台服务器上的方法,具体代码如下:
前台jQuery代码:

JScript code
//发起ajax请求发送邮件和短信                $.ajax({                    type: "POST",                    contentType: "application/json",                    url: "SendEmailMethod.aspx/SendMail",                    data: "{pw:'" + Math.random() + "',mailSubject:'" + mailSubject + "',mailSender:'" + mailSender + "',mailToList:'" + mailToList + "',mailCcList:'" + mailCcList + "',mailContent:'" + mailContent + "'}",                    dataType: 'json',                    success: function (result) {                        closeWaitingDialog("showWaiting"); //关闭等待提示框                                                                       showCustomDialog("showResult", result.d); //显示操作结果对话框                    }                });


服务器上的方法代码:
C# code
 /// <summary>        /// 发送邮件服务器端方法并手动输入的手机号码发送短信        /// </summary>        /// <param name="mailSubject">邮件主题</param>        /// <param name="mailSender">邮件发送人地址</param>        /// <param name="mailToList">接收人列表</param>        /// <param name="mailCcList">抄送人列表</param>        /// <param name="mailContent">邮件内容</param>        /// <param name="mobileList">手机号列表</param>        /// <returns></returns>        [WebMethod]        public static bool SendMail(string mailSubject, string mailSender, string mailToList, string mailCcList, string mailContent, string mobileList)        {            try            {                SendMail mail = new SendMail();                //收件人列表                mail.MailToList = new List<string>();                foreach (string mailTo in mailToList.Split(new char[] { ';', ',' }))                {                    if (mailTo.Trim() != string.Empty)                    {                        mail.MailToList.Add(mailTo);                    }                }                //抄送人列表                mail.MailCcList = new List<string>();                foreach (string mailCc in mailCcList.Split(new char[] { ';', ',' }))                {                    if (mailCc.Trim() != "")                    {                        mail.MailCcList.Add(mailCc);                    }                }                //邮件发送类的发件人,主题,主体内容等                mail.MailSender = mailSender;                mail.MailSubject = mailSubject;                mail.MailContent = mailContent;                //附件文件必须是服务器上面的地址                  //也就是如果从本地电脑读取文件则需要上传到服务器                //附件功能暂时不使用,需要时再启用                //mail.MailAttachmentList = new List<string>();                //foreach (string attachment in mailAttachmentList.Split(new char[] { ';', ',' }))                //{                //    if (attachment.Trim() != string.Empty)                //    {                //        mail.MailAttachmentList.Add(attachment.Trim());                //    }                //}                //开始发送邮件                mail.Send();                //邮件发送成功后才开始将短信内容存储到后台服务器中                                string[] mobiles = mobileList.Split(new char[] { ';', ',' });                IRepository<SendingMessage> rep = new SendingMessageRepository();                foreach (string mobile in mobiles)                {                    rep.Add(new SendingMessage                    {                        MessageContent = mailContent,                        Status = false,                        MobileNumber = mobile,                        SentDate = DateTime.Now                    });                }                rep.UnitOfWork.Commit();                rep.UnitOfWork.Dispose();            }            catch            {                return false;            }            return true;        } 



在使用vs自带的web服务器时是正常的,但是将项目部署到IIS上时会出现提示要求用户登录的对话框,就像你要访问网络上的一台路由器时要输入登入用户名和密码一样,不知怎么解决啊,麻烦各位了!

[解决办法]
IIS的目录安全性还启用匿名访问
网站物理文件夹的安全性要允许NETWORK Service账户可读取

热点排行