gpt4 book ai didi

javascript - BreezeJs - 带参数的 Ajax 调用,无缓存

转载 作者:太空宇宙 更新时间:2023-11-04 16:12:39 24 4
gpt4 key购买 nike

BreezeJs 的 POST Ajax 调用(带有我用来检索数据的参数)由浏览器缓存。 "cache: false" 属性不起作用,$.ajaxSetup({ cache: false }); 选项也不起作用。我该如何防止这种情况发生?如果我需要发出 GET 请求,我该如何进行?这是我的代码的一部分...

JS

var id = 100;
var serviceName = '/breeze/sample';
var ajaxImpl = breeze.config.getAdapterInstance('ajax');

ajaxImpl.ajax({
type: 'POST',
url: serviceName + '/getdata',
data: { dataid: id },
success: function(data) {
// Do something with data
}
});

API Controller

[HttpPost]
[Authorize("User")]
[ActionName("getdata")]
public object GetData(HttpRequestMessage request)
{
if (!IsAuthorized()) // Pre-defined function
throw new HttpResponseException(HttpStatusCode.Unauthorized);

var data = request.Content.ReadAsFormDataAsync().Result;
var dataId = data["dataid"];
var query = "sp_getdata @id"; // Pass parameter @id to stored procedure "sp_getdata"
var id = new SqlParameter("@id", dataId);

return unitOfWork.Context().ExecuteStoreQuery<GetData>(query, id).ToList();
}

提前致谢。

最佳答案

我们可以轻松地使用 GET 和 POST。

你有 Global.asax 吗?添加这个...不确定寻找/api/或/breeze/是否是唯一的方法,但请根据您的情况进行调整。

protected void Application_PreSendRequestHeaders(object sender, EventArgs e)
{
// Never Cache API (Web API or Breeze.Sharp) Data Requests
if (Request.RawUrl.Contains("/api/") || Request.RawUrl.Contains("/breeze/"))
Response.Cache.SetCacheability(HttpCacheability.NoCache);
}

关于javascript - BreezeJs - 带参数的 Ajax 调用,无缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41336624/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com