Служба підтримки The Movie Database

First off, I will say that I appreciate that the headers are based off how others have done it.

I am curious about a few things with it though.

X-RateLimit-Reset is basically returning a time. For me to be confident in that time, I have to parse the Date HTTP return header to see what time the server thinks it is. Once I know that, I can compare it to the time that my machine thinks it is and then do a diff between the two, if there is any. There shouldn't be, but you never can tell.

Always makes me feel as though returning a time span in seconds or milliseconds would be better. (Not asking for a change here, just an observation.)

So, the question: 1 second is quite a long time. So when an API request is made and the Reset time is set, is that time rounded up? Down to the nearest second? Left as is and thus we don't have an accurate idea?

e.g. I took the server time, reset time and worked it all out, put in an appropriate delay in seconds, but was a hair's whisper out and got a few 429s returned. Now, I could add 1 second extra delay, but that is 10% of the window, which seems quite extreme.

So if I make my first request and it comes in at 16.999 seconds past. Does the reset time happen at 26.000? 27.000? Or 26.999?

Basically, I am left wondering if it is better to ignore the headers and just measure the 10secs on the machine itself. Even then though, I am left wondering whether there is a variance of up to a 1 second.

1 відповідь (на сторінці 1 із 1)

Jump to last post

Hey @Tokubetsu,

Sorry about the delay in answering your questions. The last 10 days has been bananas.

So, the question: 1 second is quite a long time. So when an API request is made and the Reset time is set, is that time rounded up? Down to the nearest second? Left as is and thus we don't have an accurate idea?

You can actually see the rate limiting code, it's all open source: https://github.com/fanhattan/lua-resty-rate-limit/blob/master/lib/resty/rate/limit.lua

I'm using math.floor on all my time calculations which based on my research rounds down in Lua.

Basically, I am left wondering if it is better to ignore the headers and just measure the 10secs on the machine itself.

I guess it's kind of just personal preference of how you want to build it.

Не вдалося знайти фільм або серіал? Увійдіть, щоб додати.

Загальні

s відкрити панель пошуку
p відкрити меню профілю
esc закрити відкрите вікно
? відкрити вікно з гарячими клавішами

На сторінках медіа

b повернутися назад
e перейти до сторінки редагування

На сторінках сезонів шоу

(стрілка вправо) перейти до наступного сезону
(стрілка вліво) перейти до попереднього сезону

На сторінках серій шоу

(стрілка вправо) перейти до наступної серії
(стрілка вліво) перейти до попередньої серії

На всіх сторінках зображень

a відкрити вікно додавання зображення

На всіх сторінках редагування

t відкрити перемикач перекладів
ctrl+ s підтвердити форму

На сторінках обговорення

n створити нове обговорення
w змінити статус стеження
p перемикач публічно/приватно
c перемикач відкрито/закрито
a відкрити активність
r відповісти на обговорення
l перейти до останньої відповіді
ctrl+ enter підтвердити повідомлення
(стрілка вправо) наступна сторінка
(стрілка вліво) попередня сторінка

Налаштування

Хочете поставити оцінку чи додати до списку?

Увійти