它可以調用WebMethods
與AJAX
作爲傳輸是HTTP
。你可以找到它的許多例子在互聯網和SO:
jQuery AJAX call to an ASP.NET WebMethod
Calling ASP.Net WebMethod using jQuery AJAX
SOAP
是有效載荷的信封(有一些額外的功能)。是否要在WebMethod
中使用它取決於您。
這裏是你如何在Web應用程序項目創建一個Hello World服務:
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
[ScriptService]
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
}
這裏是你如何用jQuery使用它:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.js"></script>
<script>
console.log($.ajax);
$.ajax({
type: "POST",
url: "http://localhost:55501/WebService1.asmx/HelloWorld",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(response.d) {
alert(response.d);
}
});
</script>
而且從服務器的響應將是{d: "Hello World"}
因爲jQuery將添加Accept頭文件「application/json」。
這裏是如何從控制檯應用程序使用它:
static void Main(string[] args)
{
var client = new HttpClient();
var uri = new Uri("http://localhost:55501/WebService1.asmx/HelloWorld")
// Get xml
var response = client.PostAsync(uri, new StringContent("")).Result;
Console.WriteLine(response.Content.ReadAsStringAsync().Result);
Console.WriteLine();
// Get Json
var response1 = client.PostAsync(uri,
new StringContent("", Encoding.UTF8, "application/json")).Result;
Console.WriteLine(response1.Content.ReadAsStringAsync().Result);
}
這將輸出:
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/">Hello World</string>
{"d":"Hello World"}
也SOAP頭如何使用jQuery AJAX工作 – Var
@AndriiLitvinov請不要用'內聯代碼「來突出顯示隨機條款。 – CodeCaster
@CodeCaster,你能詳細說一下嗎?或者,也許提供鏈接到維基?我認爲在科技事物突出時更容易閱讀。 –