跨域访问 webservice

王朝学院·作者佚名  2016-05-21
窄屏简体版  字體: 小  |  中  |  大  |  超大  

Ajax跨域访问 webservice前端代码

$.ajax({ type: "POST", url: "http://localhost:9767/WebService1.asmx/HelloWorld?jsoncallback=?", data: "{}", dataType: "jsonp", success: function (data) { alert(data.result); } });

webservice 的代码

public void HelloWorld() { string callbackMethodName = HttpContext.Current.Request.Params["jsoncallback"] ?? ""; HttpContext.Current.Response.Write(callbackMethodName + "({result:'Hello World'})"); HttpContext.Current.Response.End(); }

这样会得到

但是如果用这样的代码

如果url不加?jsoncallback=?

$(function () { $.ajax({ type: "POST", url: "http://localhost:9767/WebService1.asmx/HelloWorld", data: "{}", dataType: "jsonp", success: function (data) { alert(data.result); } });

public string HelloWorld() { return "Hello World"; }

则会返回一个xml (

<?xml version="1.0" encoding="utf-8"?><string xmlns="http://tempuri.org/">Hello World</string>

) 并且会不去回调函数 这是怎么回事,笔者对webservice 不是很了解 也是刚刚接触 有知道的能告诉下笔者 笔者会万分感谢

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航