json에서 세션 ID를 제공하지 않고 다른 페이지로 리디렉션하고 세션 ID를 쿠키로 제공하는 API 인증 방법을 호출하려고합니다. 여기 리디렉션 응답에서 쿠키를 가져올 수 없음
사이트 소유자가해야 할 날을 제안 것입니다 :는 리디렉션을 수행하지 않는 클라이언트를 구성 • - 그 의미는 현재 페이지에서 당신을 유지하면 바로 URL을 •를 얻을 로그인 • 실패 당신이/색인 주로 리디렉션하는 경우에는 제대로 인증하고, 내가 리디렉션 URL을하지 않았다, 허위로 AllowAutoRedirect으로 시도 할 때 추가 요청
var webRequest = (HttpWebRequest)WebRequest.Create("https:\\URL");
webRequest.UserAgent =
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36";
webRequest.Method = "POST";
webRequest.Timeout = 60000;
webRequest.AllowAutoRedirect = true;
webRequest.CookieContainer = new CookieContainer();
webRequest.ContentType = "application/x-www-form-urlencoded";
webRequest.ContentLength = data.Length;
using (var stream = webRequest.GetRequestStream())
{
stream.Write(data, 0, data.Length);
}
var response = (HttpWebResponse)webRequest.GetResponse();
var test = response.ResponseUri;
을 위해 쿠키를 유지할 수 있지만있어 쿠키. AllowAutoRedirect를 true로 설정하면 리디렉션 된 URL이 표시되지만 쿠키는 가져 오지 못합니다. AllowAutoRedirect를 false로 유지하는 경우 로깅이 성공하고 올바른 세션 ID를 쿠키로 얻었는지 어떻게 확인할 수 있습니까?
우리는 대답 할 수없고 추측 만 할 수 있습니다. 당신은 당신이 가지고있는 인증 쿠키를 시험해야 할 것이다. 인증 요청을하고 쿠키를받은 후에는 동일한 쿠키 컨테이너를 사용하고 작동하는지 확인하는 더 많은 요청 (인증 없이는 작동하지 않는 요청)을 수행해야합니다. 이 무료 도구를 사용하여 웹 서버 트래픽을 검사 할 수 있습니다. http://www.telerik.com/fiddler – mortb