2017-12-29 28 views
0

this line에서 계산 된 X-Rate-Limit-Reset 헤더의 Yii2 값에 대한 논리를 이해하는 데 어려움을 겪었습니다.Yii2 RateLimiter 헤더 X-Rate-Limit-Reset의 값이 잘못되었습니다.

documentation 상태 :

X-속도 - 제한 - 재설정, 초 수

그래서, 허용 된 최대 요청 수를 얻기 위해 대기하는 속도 제한하는 경우 100 및 기간/윈도우 3600 초, 나는 그것을 다음과 같이 작동합니다 이해입니다 : 헤더와 10시 반환에

  • 요청 # 1 헤더 10시 59분 반환에서 헤더 X-Rate-Limit-Reset 1800
  • 요청 # 3 10시 반 반환에 743,210
  • 요청 # 2 X-Rate-Limit-Reset 59

내가 뭔가를 오해하고 있는가? 아니면이 버그입니까?

답변

1

실제로는 10에서 헤더 X-Rate-Limit-Reset 36

  • 요청 # 3 10시 반 반환에 헤더 X-Rate-Limit-Reset 36
  • 요청 # 2 10시 반환에

    • 요청 # 1과 같이해야합니다 : 59 헤더가있는 반품 X-Rate-Limit-Reset 36

    속도 제한 100/3600 및 꾸준한 요청 수율로 백 36 초가 걸리기 때문입니다 econds가 주어진 창 (3600)을 채우는 간격을 좁히므로 첫 번째 요청으로부터 36 초 후에 다시 사용할 수있는 100 개의 요청이 있습니다.

    유감스럽게도 Yii 2 (매번 0을 반환)에는이 기능이있는 bug이 있지만 질문을 통해 찾을 수 있었으며 2.0.14에서 릴리스해야하는 fix을 제안했습니다.

  • +0

    설명해 주셔서 감사합니다. 나는 그것이 어떻게 작동해야 하는지를 이해한다. 그러나, 내가 한 커밋의 변화가 어떻게 문제를 해결했는지는 정말로 알 수 없습니다 ... – Hector