PHP 포럼에서 C# 코드를 사용하여 사용자를 인증하는 동안 문제가 발생했습니다. 는 지금까지 시도 :C# .NET을 사용하는 PHP 포럼 인증
webClient.Credentials = new NetworkCredential("Me", "MyPassword");
다음 :
HtmlDocument webPage = new HtmlDocument();
webPage.Load(new MemoryStream(client.DownloadData(this.websiteUri)));
나는 또한 웹 클라이언트의 헤더에 쿠키 정보를 추가 피곤.
는 또한 나는 시도 :using (WebClient client = new WebClient())
{
byte[] response = client.UploadValues(url, new NameValueCollection()
{
{ "usrname", "myLogin" },
{ "password", "[email protected]" }
});
string result = System.Text.Encoding.UTF8.GetString(response);
}
어떻게 결과를 확인할 수 있습니까? 내가 뭔가 잘못하고 있니? 어떤 제안?
감사합니다.
확인해 보았습니다. 귀하의 제안을 따른 후 login.php에서 기본 포럼 페이지로 리디렉션되지 않았습니다 (응답 URI는 동일합니다) - 이것이 적절하지 않다고 가정합니다. 리디렉션되어야하므로 응답 URI가 'home.php'이어야합니다. 또한 URL을 확인할 때마다이 인증 방법을 사용해야합니까? – Luke
리디렉션은 서버에서 사용하는 방법에 따라 다를 수 있습니다. 응답의 헤더를 확인하십시오. 헤더에 "Location : some-address.php"가 포함될 수 있습니다. 이것은 POST 요청 후 다른 페이지로 방향을 바꾸는 일반적인 방법입니다. 둘째로 : 로그인 상태를 유지하려면 쿠키를 보존해야하며 쿠키는 PHP 세션을 포함해야합니다. 여기에 몇 가지 팁이 있습니다. http://www.codeproject.com/Articles/195443/WebClient-Class-with-Cookies http://stackoverflow.com/questions/1777221/using-cookiecontainer-with-webclient -수업 –