0

저는 웹 사이트의 데스크톱 카운터 파트 인 WPF 응용 프로그램에서 작업하고 있습니다.WPF 응용 프로그램에서 기본 브라우저로 웹 요청을 보내는 방법은 무엇입니까?

아이디어는 응용 프로그램이 웹 사이트와 동일한 기능을 가져야하지만, 응용 프로그램의 첫 번째 릴리스에서는 모든 기능을 사용할 수있는 것은 아니기 때문에이 기능을 사용할 수 없기 때문에 링크를 추가하려고합니다. 사용자가 해당 링크를 클릭하면 웹 사이트, 기능에 대한 페이지로 이동할 수 있습니다.

지금까지 기본 브라우저를 열고 웹 사이트에서 필요한 리소스로 요청을 보낼 수있는 셸 명령을 사용하여 아무런 문제없이이 작업을 수행 할 수 있습니다.

이제 까다로운 부분은 사용자가 데스크톱 응용 프로그램에서 웹 사이트를 인증하는 데 사용한 자격 증명을 사용하므로 사용자가 다시 인증 할 필요가 없기 때문에 암호화 된 자격 증명을 전송할 생각이었습니다. 머리글에 있지만 어떻게 할 수 있는지 모르겠다. 응용 프로그램에서 웹 브라우저로 머리글을 보내려면 어떻게해야합니까?

어떻게하는지에 대한 아이디어가 있으십니까?

웹 사이트에서 폼 인증을 사용 중입니다.

감사합니다.

답변

0

양식 인증 쿠키를 웹 요청의 일부로 전달할 수 있습니다.

Uri uri = new Uri("http://services.mysite.com/document/documentservice.svc"); 
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(uri);  

HttpCookie cookie = HttpContext.Current.Request.Cookies[FormsAuthentication.FormsCookieName]; 
Cookie authenticationCookie = new Cookie(FormsAuthentication.FormsCookieName, cookie.Value, cookie.Path, HttpContext.Current.Request.Url.Authority); 

webRequest.CookieContainer = new CookieContainer(); 
webRequest.CookieContainer.Add(authenticationCookie); 
WebResponse myResponse = webRequest.GetResponse(); 
Stream stream = myResponse.GetResponseStream(); 

this 링크를 시도

+0

당신이 당신의 WPF 응용 프로그램 내에서 웹 사이트를 검색하지만 어떻게 기본 브라우저로 쿠키를 전달할 수 있다면 괜찮아? – Roberto

관련 문제