2015-06-25 66 views
0

我在寫一個Windows 8.1應用程序,它訪問REST API w/OAUTH。我使用x-ms-webview控件顯示登錄名。自我實施以來,這一切都運行良好。Windows 8.1應用程序WebView無法重定向啓用專用網絡功能

現在,我需要從生產服務器切換到其發展一個開始添加一些新的功能。授權工作原理相同,但生產服務器是公開可用的,而開發服務器只能在公司內部網上訪問。

嘗試訪問開發服務器會導致Windows阻止請求,除非我在package.appxmanifest的應用程序功能中添加了「專用網絡(客戶端&服務器)」。這很好,但是當啓用該功能時,授權無法正確重定向,而是出現空白屏幕。

奇怪的是,在生產服務器具有當「專用網」啓用(即使它是一個公共訪問的服務器)相同的問題。然而,加載到本地主機的頁面上的相同標記將正確重定向。如果WebView託管在本地或外部(無論是Intranet還是Internet),它必須採取不同的反應。有誰知道WebView行爲如何改變「私人網絡」標誌以及我如何能夠訪問Intranet站點?

我懷疑的Windows阻止重定向由於代理的可能性。通過Intranet訪問,您可以設置一個代理,可以非常輕鬆地訪問更大的Internet,即使它未在應用程序的功能中啓用。不過,我確實啓用了「Internet(客戶端)」功能,因此這不是安全問題。

沒有人有任何想法如何解決這個問題?

回答

0

太多的痛苦和折磨後,我發現的WebView不是以下重定向的原因是因爲重定向是本地主機(授權碼是在URL中的查詢參數)。顯然,當「專用網絡(客戶端&服務器)」啓用時,Windows拒絕訪問本地主機。我不完全明白爲什麼應用程序無法訪問本地主機,但顯然Windows立即拒絕這些連接。 1

@Microsoft:Visual Studio中扔了一個警告,當我試圖連接內網,告訴我的Windows積極地拒絕連接,因爲我還沒有啓用「專用網絡(客戶&服務器)」,一個問題我能夠在幾秒鐘內修復。如果您對此做了完全相同的事情,並且只是說「Windows拒絕連接到本地主機,因爲'私有網絡(客戶端&服務器)'已啓用」,您可以節省兩週。「有沒有原因沒有發生? /咆哮

我能夠通過讓服務器來解決這個重定向到404頁上的自己的域名,而不是去爲localhost。 Windows接受了這個連接,並且我能夠從URL獲得授權碼並完成我的工作。

相關問題