0

Web上の非バイナリファイルが変更されたかどうかを判断するためのアルゴリズムを作成しようとしています。私は一緒に行くつもりでした:

  • ヘッダーからのLastModified日時、およびこれらが存在しない場合はへのフォールバック
  • ヘッダーからのContentLength

ただし、多くのWebサイトでは、HTMLページのLastModifiedが実際には現在のDateTimeを使用しているため、このアプローチは機能しません(つまり、ページが常に変更されていることが示されます)。 ?

では、良いアルゴリズムは何でしょうか?どうですか?

IF response.ContentType.StartsWith("text/html")  <== or should this just be "text"
  THEN: 
    Check based on comparing text content before & after
  ELSE: 
    IF LastModified dates are OK 
      Compare based on LastModified dates
    ELSE 
      Compare based on ContentLength

ありがとう

4

2 に答える 2

2

リクエストを送信するには、If-Modified-Sincehttpヘッダーを指定します。次に、新しいhtmlまたは304のいずれかで応答するかどうかはサーバー次第です。コンテンツは変更されません。

于 2009-11-23T07:28:50.190 に答える
0

ETag応答ヘッダーは、存在する場合、これを示す良い指標です。If-None-Match(または単にHEADリクエスト)でリクエストを使用して確認します。

于 2009-11-24T03:56:12.270 に答える