dax
(Daniela)
7월 15, 2026, 7:38오후
1
IMDB는 현재 HTTP 202 Accepted 를 200 OK 대신 반환하고 있습니다(아마도 봇 방지 조치 또는 비동기 요청 처리 때문일 것입니다). 현재 구현은 200만 성공 응답으로 간주하고 다른 2xx 상태 코드는 오류로 처리하므로 지나치게 엄격합니다. 그 결과 응답 본문이 읽히지 않고 “error code of 202” 메시지와 함께 원보팅(oneboxing)이 실패합니다:
이 문제는 사용자가 게시글에 IMDB 링크를 붙여넣는 모든 상황에서 사용자에게 직접적으로 영향을 미칩니다.
fetch_response 메서드는 현재 HTTP 200 만 성공 응답으로 허용합니다. 202 를 포함한 다른 모든 2xx 상태 코드는 response.error!로 전달되어 응답 본문을 처리하기 전에 페칭이 실패합니다.
code = response.code.to_i
unless code === 200
response.error! if [301, 302, 303, 307, 308].exclude?(code)
200만 허용하는 대신 성공적인 HTTP 상태 코드 전체 범위(2xx)를 허용할 수 있을까요?
1개의 좋아요
imdb.com가 WAF(웹 방화벽) 뒤에 있어 스크레이핑(그리고 그에 따른 원박스 처리)이 차단되는 것 같습니다. 따라서 사용자에게 표시되는 메시지를 개선하는 것 외에는 우리가 할 수 있는 일이 많지 않네요.
main ← onebox-bot-challenge-message
merged 01:49PM - 16 Jul 26 UTC
Previously, when a site behind a bot-protection service answered a onebox fetch … with a JavaScript challenge — IMDb, for example, currently returns `202 Accepted` with an AWS WAF challenge page — the preview showed the baffling "the web server returned an error code of 202", a success code presented as an error with no hint of the actual cause.
This change detects the documented challenge headers (AWS WAF's `x-amzn-waf-action` and Cloudflare's `cf-mitigated`) in `FinalDestination` and shows a message explaining that the site requires visitors to pass a verification step in a web browser. Accepting 2xx statuses beyond 200 instead would not help: the challenge response carries no OpenGraph data, so the onebox would just come out silently blank.
Reported in https://meta.discourse.org/t/407725
**BEFORE**
<img width="726" height="605" alt="2026-07-16 @ 09 51 32" src="https://github.com/user-attachments/assets/929b116d-d07a-4aca-a655-6c4b1d0db607" />
**AFTER**
<img width="718" height="685" alt="2026-07-16 @ 09 52 10" src="https://github.com/user-attachments/assets/7b555557-6cb4-40ac-a7dc-32bf2515e357" />
2개의 좋아요
이것을 닫으려면, 새 메시지가 작성자 미리보기에 어떻게 표시되는지 확인해 보세요