jquery ajax CORS 跨域訪問 WebService
JS代碼:
var word = document.getElementById(word).value;$.ajax({ type: POST, contentType: application/x-www-form-urlencoded, url: http://localhost:12805/WebService.asmx/HelloWorld, data: 'data=' + word, dataType: 'text', success: function(result) { alert(success: + result); }, error: function(result, status) { alert(error: + status); }});
C# WebService代碼:
[WebService(Namespace = weburl)][WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)][System.ComponentModel.ToolboxItem(false)]// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. [System.Web.Script.Services.ScriptService]public class WebService : System.Web.Services.WebService{ [WebMethod] public void HelloWorld(string data) { this.Context.Response.AddHeader(Access-Control-Allow-Origin, *); // CORS 跨域訪問 this.Context.Response.Write(data); // 返回字串格式 }}
WebService 預設 return 返回 XML 格式,但是使用上述方式是以字串形式返回。