从详细信息页面的角度重定向未显示最新数据
我在使用Angular控制器的ASP.NET MVC Core应用程序中有一个客户页面。控制器正在调用API来获取数据。第一次加载页面时,这可以正常工作。 从此页面,用户可以导航到另一页面以添加客户。当新客户被添加时,用户被导航回主页面。但是,新客户没有显示在主页面上,它看起来像API不再被调用,所以用户被呈现旧数据。我在API解决方案中设置了一个断点,以确认添加新客户后API未被调用。客户页上从详细信息页面的角度重定向未显示最新数据
加载数据:
function customerController($http) { var vm = this;
vm.customers = [];
$http.get("http://myapi")
.then(function (response) {
angular.copy(response.data, vm.customers);
}, function (error) {
vm.errorMessage = "Failed to load data: " + error;
});
}
从细节页面的主网页重定向(也从一个角控制器):
vm.addCustomer = function() { $http.post("http://myapi", vm.currentCustomer)
.then(function (response) {
$window.location.href = "./Customers";
}, function (error) {
vm.errorMessage = "Failed to save new customer";
});
}
的数据实际上存储在数据库中通过API,但在重定向的新数据没有显示。当我刷新主页面时,新客户仍未显示。我应该强迫Angular以某种方式再次调用API吗?主页面控制器的构造函数在重定向后调用。
回答:
我想ASP.NET Core会缓存您的index.html文件或者启用了另一个缓存。
我会检查浏览器开发工具的响应头,以确保该页面没有缓存的属性。
或者试试这个:
app.UseStaticFiles(new StaticFileOptions {
OnPrepareResponse = context =>
{
if (context.File.Name == "index.html") {
context.Context.Response.Headers.Add("Cache-Control", "no-cache, no-store");
context.Context.Response.Headers.Add("Expires", "-1");
}
}
});
此代码是从https://stackoverflow.com/a/45329316/3710672
以上是 从详细信息页面的角度重定向未显示最新数据 的全部内容, 来源链接: utcz.com/qa/265398.html