생각나는 경우는 두가지 경우입니다.
Web application server는 기본적인 통신포맷이 JSON이 아닙니다. HTML을 기본으로 하고 여기에 XML, JSON같은 포맷을 추가하여 요청값에 따라 응답할 수 있도록 처리하게 됩니다.서버단에서 JSON 요청에 대해 처리 중 에러가 났을 때 제대로 처리하지 못하게 되거나 에러일 경우 응답을 error.html과 같은 html페이지로 세팅했다면 html 로 응답이 가게 됩니다.
다른 하나는 web application server 앞 단에 apache나 NGNIX같은 정적인 리소스(정적페이지, 이미지, 파일 등등)를 서비스하는 서버가 존재하는 경우, 여기에서 에러가 발생하게 되면 web application server까지 가지 못하고 앞 단에서 에러를 떨구게 됩니다. 이 리소스 서버는 JSON 을 처리하지 않는 것이 일반적이기 때문에 html 페이지로 응답이 나갈 수가 있습니다.