The Movie Database 지원

Within Firebug, the Etag appears like this:

Etag: W/"f505e04d188a34b2a4aaa7e759cdbae9"

Programatically, it returns:

"ETag: "55f3aa25f88ce3f7616794ccd3d139cd""

The question is, should the additional double quotes or W/ be there?

This happens on both movie and person API calls.

7 댓글 (1 / 1)

Jump to last post

Hi Adi,

I've noticed that as well. I don't actually have an answer for you. The weird part is that with cURL it's fine, but in browsers t's not. That's the part that I don't get.

$ curl -I -L https://api.themoviedb.org/3/movie/550?api_key=###
HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=28800
Content-Length: 1338
Content-Type: application/json;charset=utf-8
Date: Mon, 09 May 2016 17:55:09 GMT
ETag: "ef78e0da547af7a65612b734b1273e03"
Server: openresty
Status: 200 OK
Vary: Accept-Encoding
X-Memc: HIT
X-Memc-Age: 19339
X-Memc-Expires: 9461
X-Memc-Key: a7a8be33582080c3e162cfcb93607b73
X-RateLimit-Limit: 40
X-RateLimit-Remaining: 39
X-RateLimit-Reset: 1462816519
Connection: keep-alive

Maybe it's an invisible character or something, I'm just not sure.

Seems to happen about 4% of the time programmatically for Person requests. e.g. ID 54769 was fine, but 4826 had the issue.

Will keep an eye on it and see if there is a pattern. Makes me wonder if it happened to a certain number of files which were updated over a short period where there was a code error.

The W/ is the more common of the two. A lot more common. The issue is replicated both in browser and programmatically.

Okay, so film 146107 is fine:

HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=28800
Content-Type: application/json;charset=utf-8
Date: Wed, 11 May 2016 16:34:47 GMT
Etag: "41739ebf149fba438463473554dedf4c"
Server: openresty
Status: 200 OK
X-Memc: HIT
X-Memc-Age: 1064
X-Memc-Expires: 27736
X-Memc-Key: 6029c2890a4431cbfd77d40f0b774621
X-RateLimit-Limit: 40
X-RateLimit-Remaining: 31
X-RateLimit-Reset: 1462984487
Content-Length: 968
Connection: keep-alive

146113 is not fine:

HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=28800
Content-Encoding: gzip
Content-Type: application/json;charset=utf-8
Date: Wed, 11 May 2016 16:29:15 GMT
Etag: W/"1ee1814e22b8a22c2a7868c7d0880bd8"
Server: openresty
Status: 200 OK
Vary: Accept-Encoding
X-Memc: HIT
X-Memc-Age: 725
X-Memc-Expires: 28075
X-Memc-Key: 456257f798a11d14260b3749dacd0394
X-RateLimit-Limit   : 40
X-RateLimit-Remaining: 28
X-RateLimit-Reset: 1462984155
Content-Length: 1202
Connection: keep-alive

This seems to be the difference between the two:

Content-Encoding: gzip
Vary: Accept-Encoding

W/ has gained those two entries in the header response.

Looks like Varnish-Cache or something similar is the culprit: https://www.varnish-cache.org/docs/trunk/users-guide/compression.html Check the heading: Compressing content if backends don't

We don't use Varnish, but I'll take a read through that and look to see why some responses are serving the Content-Encoding/Vary headers while others aren't.

P.S. I don't have time for this right now, but will try in the next few weeks.

Makes no odds to me. It was just a curiosity, so I thought I would mention it :) But the W/ seems to be a practise which is obviously adopted by more than one caching thing.

찾으시는 영화나 TV 프로그램이 없나요? 로그인 하셔서 직접 만들어주세요.

전체

s 검색 바 띄우기
p 프로필 메뉴 열기
esc 열린 창 닫기
? 키보드 단축키 창 열기

미디어 페이지

b 돌아가기
e 편집 페이지로 이동

TV 시즌 페이지

(우 화살표) 다음 시즌으로 가기
(좌 화살표) 이전 시즌으로 가기

TV 에피소드 페이지

(우 화살표) 다음 에피소드로 가기
(좌 화살표) 이전 에피소드로 가기

모든 이미지 페이지

a 이미지 추가 창 열기

모든 편집 페이지

t 번역 선택 열기
ctrl+ s 항목 저장

토론 페이지

n 새 토론 만들기
w 보기 상태
p 공개/비공개 전환
c 열기/닫기 전환
a 활동 열기
r 댓글에 글쓰기
l 마지막 댓글로 가기
ctrl+ enter 회원님의 메세지 제출
(우 화살표) 다음 페이지
(좌 화살표) 이전 페이지

설정

이 항목을 평가하거나 목록에 추가할까요?

로그인