2012-07-11 78 views
3

我試圖通過new Uri(".example.com")如何創建一個帶點前綴的cookie uri?

無效的URI的一個URI:URI的格式無法確定。

new Uri("http://.example.com")

無效的URI:主機名無法解析。

我需要能夠使用CookieContainer.SetCookies函數,它只有一個超載取Uri。

根據this page,.NET 4.0現在應該支持點前綴的cookie,但似乎Uri類沒有?

回答

2

在這種情況下,您需要將適當的uri傳遞給該函數,並且Uri解析器正確地拒絕了您嘗試使用的格式錯誤的字符串。

我會建議使用Cookie構造函數,它需要4個參數 - 允許您將域設置爲以點爲前綴的域。

Cookie(string name, string value, string path, string domain); 
+0

這似乎是唯一的解決方法。不幸的是,改變Uri使用的所有地方會造成很多重構。來到這裏希望也許有另一種方式來表明。前綴的URI。你說我的字符串格式不正確?我的字符串如何變形? RFC標準用a表示一個域。前綴對cookie有效。 – AaronLS 2012-07-11 07:26:37

+0

作爲'Uri()'傳遞時,它的格式不正確 - 它們有不同的要求 – Petesh 2012-07-11 07:35:55

+2

使用'GetCookies()'時怎麼辦? – devlord 2013-08-04 20:58:16

相關問題