현재 제가 작업하고있는 응용 프로그램에는 세션 시간 초과 값이 있습니다. 사용자가이 값보다 길게 상호 작용하지 않은 경우로드 할 다음 페이지에 로그인하라는 메시지가 표시됩니다.HTTP 401 - 적절한 WWW-Authenticate 헤더 값은 무엇입니까?
모든 요청은 AJAX 호출을 포함하여이 메커니즘을 통해 전달됩니다. 원래 200 페이지가 로그인 페이지로 보내졌습니다. 200 페이지의 응답이 보내지면 코드가 실행되고 AJAX에서 몇 가지 문제가 발생합니다.이 RPC 호출에서 보내진 대부분의 데이터는 JSON 또는 원시 JavaScript로 평가됩니다. ask : |).
나는 우리의 JSON 파서는 HTML 로그인 페이지를 소비하려고하지 때문에 401이 더 나은 것을 제안했습니다 .. :)
을 reading the spec은, 그러나, 내가 발견하면 WWW-Authenticate
필드해야하는 또한 보냈습니다.
이 필드에 적합한 값은 무엇입니까? Application Login
으로 충분합니까?
감사가 리디렉션하지 않고 있기 때문에 나는 지금 대신 403을 사용하고, 짝을 그 말 그대로 원래 페이지 대신 로그인 양식을 포함합니다. 또한 W3 사양과 잘 일치합니다. 그러나 정보를 제공해 주셔서 감사합니다. –
HTTP 401을 어떻게 여전히 사용할 수 있는지에 대한 답을 확인하십시오. http://stackoverflow.com/questions/928874/how-do-i-keep-firefox-from-prompting-for-username-password-with-http-basic -auth/19102200 # 19102200 – lanoxx
예, WWW-Authenticate 헤더에 무엇이든 넣으십시오. 비슷한 맥락에서 또 다른 대답은 http://stackoverflow.com/a/1088127/689161입니다. 아니면 단순히 사양을 위반하고 헤더를 보내지 않아도됩니다 (최소한 몇 개의 사이트에서이 작업을 수행합니다). 401은 여전히 403보다 더 적절합니다. – gengkev