Ajax跨域请求及webservice

           $.ajax({
                type: "get",
                contentType: "application/json",
                url: "http://xxxx",
                data: { 参数名: 参数值 },
                dataType: 'jsonp',
                error: function (a, b, c) { },
                success: function (data) {}
            });

 

步骤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 + "\" })");
        }  
    }
} 

 

posted @ 2015-03-31 16:50  风飞萧雪  阅读(854)  评论(0编辑  收藏  举报