【发布时间】:2017-10-24 14:13:05
【问题描述】:
我在public class UPWebsiteAPIController : ApiController 之前添加了[System.Web.Http.Cors.EnableCors(origins: "*", headers: "*", methods: "*")],每次我想要POST 数据时,我的函数都应该return new JsonResult { Data = toReturn };。问题是该函数已完全执行并返回 toRerurn 对象,但浏览器得到错误代码 500 和
请求的没有 Access-Control-Allow-Origin 标头 资源
后端代码:
[System.Web.Http.HttpPost]
public async Task<System.Web.Mvc.ActionResult> CreateEvent(FormDataCollection formData)
{
try
{
(code which works fine)
toReturn[0] = HttpStatusCode.OK;
return new JsonResult { Data = toReturn };
}
catch (Exception ex)
{
toReturn[0] = HttpStatusCode.BadRequest;
return new JsonResult { Data = toReturn };
}
}
前端代码:
$.ajax({
type: "POST",
url: 'http://www.XXX.aspnet.pl/api/UPWebsiteAPI/CreateEvent',
data: data,
beforeSend: function() {
$loading.show();
},
success: function(response) {
console.log('sukces');
console.log(response);
$loading.hide();
$response.show();
$response.find('.pay-button').show();
$response.find('.pay-link').attr('href', response.Data[1]);
$response.find('h2').html("Gratulacje!' );
},
error: function(response) {
console.log('error');
console.log(response);
$loading.hide();
$response.show();
$('.pay-button').hide();
$response.find('h2').html("Przepraszamy...");
}
});
我该怎么办?有趣的是,它有时可以毫无问题地工作,但有时(经常)会出现这些错误。
【问题讨论】:
标签: asp.net json ajax http-post