這次帶給大家js跨域呼叫WebService的使用方法,js跨域呼叫WebService的注意事項有哪些,下面就是實戰案例,一起來看一下。
步驟1. 在web.config中的system.web節點加入
<!--此节点可允许脚本跨域调用webservice--> <webServices> <protocols> <add name="HttpPost"/> <add name="HttpGet"/> </protocols> </webServices> <!--此节点可允许脚本跨域调用webservice-->
步驟2. webservice程式碼
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Services; using System.Web.Mvc; namespace WebService { /// <summary> /// WebService1 的摘要说明 /// </summary> [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。 [System.Web.Script.Services.ScriptService] public class WebService1 : System.Web.Services.WebService { [ValidateInput(false)] [WebMethod(Description = "测试")] public void getDBTableInfos(string EnterpriseCode) { HttpContext.Current.Response.ContentType = "application/json;charset=utf-8"; string jsonCallBackFunName = string.Empty; jsonCallBackFunName = HttpContext.Current.Request.Params["jsoncallback"].ToString(); HttpContext.Current.Response.Write(jsonCallBackFunName + "({ \"Result\": \"" + EnterpriseCode + "\" })"); } } }
#步驟3. html頁面部分
<!DOCTYPE html> <html> <head> <title>Index</title> <script src="http://www.cnblogs.com/Scripts/jquery-1.5.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#btnSubmit").click(function () { var EnterpriseCode = "39"; //企业代码 var dataStr = "EnterpriseCode=" + EnterpriseCode; $.ajax({ type: "get", url: "http://xxx/xxx.asmx/AntiWebQuery_Ajax?jsoncallback?", dataType: "jsonp", jsonp: 'jsoncallback', data: dataStr, success: function (result) { //返回结果 alert(result.Result); } }); }); }); </script> </head> <body> <p> <input id="btnSubmit" type="button" value="查询" /> </p> </body> </html>
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是js跨域呼叫WebService的使用方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!