html5请求webservice解决跨域返回json数据_1

首先创建c#的webservice 创建出来之后进行更改:

[WebService(Namespace = "localhost")]

然后编写自己的webconfig 设置跨域






    
        
      
        
          
          
        
      
      
     
  
    
      
        

        
        
      
    
  

增加跨域的请求方式设置

接着我们进行编写接口的方法

[WebMethod]
        public void HelloWord2(String v1, String v2,String jsonpCallback)
        {
            string callback = Context.Request["callback"];
            string response = "{\"value1\":\"" + v1 + "\",\"value2\":\"" + v2 + "\"}";
            string call = callback + "(" + response + ")";
            Student Test1 = new Student();
            Test1.Name = "webservice";
            List list1 = new List();
            list1.Add(Test1);
            string rs = Newtonsoft.Json.JsonConvert.SerializeObject(list1);
            
            string call2 = callback + "(" + rs + ")";
            string call3 = callback + "(" + JsonConvert.SerializeObject(new { Start = "false", Test1 = Test1.Name, list1 = list1 }) + ")";
            Context.Response.Write(call3);
            //Context.Response.Write(call);
            Context.Response.End();
        }
        public class Student {
            public string Name { get; set; }
        }

在这里我们可以通过net 的json 序列化返回出数据,必须要进行callback 的转换,而且,必须返回出来的数据,必须是需要{}类型的json 数据,如果带【】 会报错,所以采用了JsonConvert中直接创建对象的方式进行

好了以后,我们就可以进行页面进行调取了

页面的调取的方式代码为:




	
	Document
     
	


点我更新本地的Index
点我更新2
通过点击事件发送ajax请求,然后发送的请求都会变成get的请求的方式在这里进行获得数据后是一个json 对象,


html5 的页面代码效果如图:

html5请求webservice解决跨域返回json数据_1_第1张图片


你可能感兴趣的:(html5,net)