我终于在谷歌上找到了答案,尝试了不同的方法。
这可能是一个重复的问题/问题,但我只想分享一下我使用.NETCore开发WebAPI的经验。
我发现我的web应用程序似乎禁用了前后缓存。(可以在控制台F12开发工具上看到)
DOM7011:此页上的代码禁用了前后缓存。有关详细信息,请参见:
http://go.microsoft.com/fwlink/?LinkID=291337
添加app.UserResponseCaching();在启动.cs
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
// Use Cross origin resource sharing
app.UseCors(
options => options.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
);
app.UseAuthentication();
//20180830
app.UseResponseCaching();
app.UseMvc();
}
添加服务.AddResponseCaching();在启动.cs,配置服务。
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddResponseCaching();
...............
}
最后在我的webapi上添加一个响应头就解决了这个问题。
[HttpGet("usraccessbk"), ResponseCache(Location = ResponseCacheLocation.None,
NoStore = true)]
public IActionResult GetWorkXXXXAccess(string user, string buXXXX) {
...........
}