2011-03-22 77 views
0

我正在WPF應用程序中,這是一個網站的桌面計數器部分。如何將webrequest從WPF應用程序發送到默認瀏覽器?

這個想法是應用程序應該具有網站所具有的相同功能,但是對於應用程序的第一個發行版,並非所有功能都可用,因此我想在功能上放一個鏈接可用但希望當用戶點擊該鏈接,我想帶他們到網站,到該功能的頁面。

到目前爲止,我可以毫不費力地做到這一點,使用shell命令我可以打開默認瀏覽器並將請求發送到我需要在網站上的資源。

現在,棘手的部分是,我想使用用戶在桌面應用程序中使用的憑據來與網站進行身份驗證,所以用戶不必再次進行身份驗證,我在考慮將身份驗證發送在一個標題,但我不知道我該怎麼做,我怎麼能從我的應用程序發送頭到Web瀏覽器。

任何想法如何做到這一點?

該網站正在使用表單身份驗證。

謝謝。

回答

0

您可以嘗試將您的表單身份驗證cookie作爲webrequest的一部分傳遞。

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應用程序內部,而是你如何可以通過cookie來默認瀏覽器也沒關係? – Roberto 2015-10-26 13:39:30

相關問題