标签: etag

如何使用etags只跳转到确切的函数名?

我想用etags找到以下函数:

dt()
Run Code Online (Sandbox Code Playgroud)

但是当我浏览标签表时,我会继续用dt他们的名字命中函数,比如

widthThing1()
widthThing2()
...
Run Code Online (Sandbox Code Playgroud)

使定义dt()极难找到.

有没有办法搜索我用etags搜索的确切函数?

emacs etag

1
推荐指数
1
解决办法
201
查看次数

检票口是否支持ETag?

我在Wicket找不到任何etags支持的痕迹.有一种方法可以使用etags吗?

etag wicket

1
推荐指数
1
解决办法
176
查看次数

ETag 是如何生成和配置的?

我最近了解了 HTTP 标头的概念ETag。(这个)但是我仍然有一个问题,对于特定的HTTP资源谁负责生成ETag?

换句话说,它是实际的应用程序、容器(例如:Tomcat)、Web 服务器/负载均衡器(例如:Apache/Nginx)?

有人可以帮忙吗?

apache rest etag tomcat nginx

1
推荐指数
1
解决办法
5376
查看次数

C# – 如何重写 List<T> 的 GetHashCode 以计算 ETag(其中 T 为记录)

对于 NetCore Web APIGET方法,我需要计算返回的 ETag List<T>。T 是 a 形式的 DTO record,仅保存原始类型。

我想计算列表的哈希值。我正在寻找有关如何GetHashCode()实施的信息,但找不到任何信息。object.GetHashCode()的文档 没有说明有关列表或集合的任何信息。通过代码的结果,我观察到每次运行时相同的列表数据都会创建不同的哈希码。我得出的结论是,GetHashCode()将指针值用于引用类型项。

GetHashCode()ofrecord计算每个成员值的哈希码。因此,我通过循环列表项创建了列表哈希代码:

List<GetGroupsDTO> dtoList = commandResult.Value;
int hash = 17;
foreach(GetGroupsDTO dto in dtoList)
{
   hash = hash * 23 + dto.GetHashCode();
}
string eTagPayload = hash.ToString().SurroundWithDoubleQuotes();
Run Code Online (Sandbox Code Playgroud)

List<T>当然,我不想对每个人都这样做。我想覆盖GetHashCode(),但我正在努力解决。我不知道如何覆盖通用列表。我可以派生一个新类 DTOList ,我可以在其中重写GetHashCode(). 但这会导致其他地方变得更加复杂。由于 EFCore Set 查询的结果填充列表,我需要一个自定义转换器,然后需要一个自定义序列化器来返回 Web API 中的列表。

因此,我想知道是否应该为 List 创建一个扩展方法,或者只是一个以 List 作为参数的函数。还有其他选项可以计算 ETag 吗?如何有效计算 DTO 对象列表的 ETag?

c# etag list gethashcode asp.net-core-webapi

1
推荐指数
1
解决办法
1328
查看次数

为什么我的 ETag 标头在 IIS 下有效,而在 VS2010 Web 服务器下无效?

在我的 ASP.NET MVC 2 应用程序中,我有以下几行:

Response.Cache.SetMaxAge(TimeSpan.FromDays(90));
Response.Cache.SetETag(lastWriteTime.Value.Ticks.ToString());
Run Code Online (Sandbox Code Playgroud)

使用 Fiddler 跟踪 HTTP 流,我可以看到:

ETag: 634473035667000000
Run Code Online (Sandbox Code Playgroud)

在 IIS7 下运行时,在响应标头中,但是当我在 Visual Studio 2010 Web 服务器下运行时,这个标头只是......消失了。无论我是通过 Response.Cache.SetETag() 还是通过 Response.AppendHeader("ETag", etag) 设置它,它都不会返回。

这是 IIS Web 服务器的“功能”吗?是否有一些我错过的配置设置?如果我必须附加到 IIS 进程才能调试任何东西,这将使测试缓存失效有点繁琐......

编辑:看起来,尽管调用了 Response.Cache.SetCacheability(HttpCacheability.Public),VS/Cassini 总是返回 HTTP Cache-Control 设置为“私有”的资源......这有帮助吗?

asp.net-mvc etag cassini webdev.webserver http-headers

0
推荐指数
1
解决办法
2350
查看次数