ajax - 如何从 Asp.Net Web API 向 AJAX 调用发送成功或失败状态
问题描述
我正在开发一个 asp.net C# Web API 项目。我正在使用 jQuery AJAX 从客户端发布数据。代码如下。我尝试了两种类型的 AJAX 调用,如下所示。无论 API 成功与否,在 AJAX 中永远不会到达成功或错误下的代码。
Asp.Net Web API Code:
[HttpPost]
[Route("SendCustomerDetails")]
public async Task<IHttpActionResult> SendCustomerDetails([FromBody] String jsonData)
{
//Code to process json
//...
//...
resp = await client.PostAsJsonAsync("customer/newcustomer", jObject);
if (resp.IsSuccessStatusCode)
{
//log resp
return Created(Request.RequestUri.ToString(), resp.StatusCode);
}
else{
//log resp
return Created(Request.RequestUri.ToString(), resp.StatusCode);
}
}
Jquery AJAX code1:
$.ajax({
type: 'POST',
url: 'http://localhost:49918/SendCustomerDetails',
dataType: 'json',
//data: jsonData,
data: JSON.stringify(jsonData),
contentType: "application/json"
}).done(function (data) {
alert("Success: " + data);
$('#value1').text(data);
}).fail(function (jqXHR, textStatus, errorThrown) {
alert("failure: " + jqXHR.responseText || textStatus);
$('#value1').text(jqXHR.responseText || textStatus);
});
Jquery AJAX code2:
$.ajax({
type: 'POST',
url: 'http://localhost:49918/SendCustomerDetails',
dataType: 'json',
//data: jsonData,
data: JSON.stringify(jsonData),
contentType: "application/json",
success: function(data) {
alert("Success: " + data);
},
error: function (data) {
alert("error: " + JSON.stringify(data));
}
});
解决方案
修复动作
[HttpPost]
[Route("~/SendCustomerDetails")]
public IActionResult SendCustomerDetails(JObject model)
{
return Ok(" It is Success");
}
试试这个代码
$.ajax({
type: 'POST',
url: 'http://localhost:49918/SendCustomerDetails',
data: { model:jsonData},
success: function(data) {
alert("Success: " + JSON.stringify(data));
},
error: function (data) {
alert("error: " + JSON.stringify(data));
}
});
推荐阅读
- c# - Azure SpatialAnchors in Xamarin
- ios - 在密码文本输入期间是否有键盘大小更改的通知处理程序?
- vim - 以 JSON 格式列出给定文件夹的文件
- javascript - 我正在使用 react-native-elements 创建一个复选框列表。如何一次只检查一个框?
- java - 为什么responsebody注解返回String会导致ajax错误?
- r - 矩阵列表的for循环
- php - 如何将呼叫者连接到第三方,但在连接前向第三方宣布呼叫?
- python - 我如何在 python c++ 包装器中创建一个 const float*& 变量
- java - 尽管循环在数组长度范围内,但超出范围异常
- php - curl 的等效 php 选项