2 回答
TA贡献1874条经验 获得超12个赞
修改ajax请求以正确包含查询字符串参数:
$.ajax({
url: "AddApplication/GetURL",
data: ({ term: request.term}),
dataType: "json",
type: "GET",
success: function (data) {
response($.map(data, function (item) {
return item;
Console.log("response"+item)
}))
}
});
TA贡献1802条经验 获得超6个赞
经过更多搜索,我终于能够让它工作。添加防伪标记可能是根本问题,因为我之前没有添加它。请注意 URL,根据多个来源,这是在 razor 中引用 URL 的正确方法。
虽然由于某种原因它只调用完成的函数,但它永远不会成功。目前这不会引起问题。
AddApplication.cshtml
<script>
$(document).ready(function(){
$("#UrlQueBtn").click(function(e)
{
e.preventDefault();
var url = $('#urlSelect').val();
console.log(url);
$.ajax({
url: "AddApplication?handler=AddUrlToQue",
type: "POST",
dataType: "json",
data: { urlSelect: url },
beforeSend: function (xhr) {
xhr.setRequestHeader("XSRF-TOKEN",
$('input:hidden[name="__RequestVerificationToken"]').val());
},
success: function () {
alert("success");
},
complete: function () {
alert("complete")
},
failure: function () {
alert("failure");
}
})
});
});
</script>
需要在启动类中加入防伪令牌 startup.cs
在配置服务下 services.AddAntiforgery(o => o.HeaderName = "XSRF-TOKEN");
- 2 回答
- 0 关注
- 121 浏览
添加回答
举报