Check IF_NONE_MATCH header for directory listings

This commit is contained in:
Garret Alfert
2016-01-23 14:29:37 -05:00
parent bec9f7a6cc
commit 15196ca4b9
2 changed files with 9 additions and 1 deletions

View File

@@ -75,9 +75,10 @@ module RemoteStorage
end
def get_directory_listing(user, directory)
# TODO check IF_NONE_MATCH header
etag = redis.hget "rs_meta:#{user}:#{directory}/", "etag"
none_match = (server.env["HTTP_IF_NONE_MATCH"] || "").split(",").map(&:strip)
server.halt 304 if none_match.include? etag
server.headers["Content-Type"] = "application/json"
server.headers["ETag"] = %Q("#{etag}")