2009-02-13 81 views
0

我在ifStartLoadWithRequest委託中的UIWebView中捕獲鏈接單擊的信息。我使用mainDocumentURL來獲取點擊鏈接的URL。這顯示完整的網址,但我只需要頁面的名稱,即.html,.htm等請求。我不能看到任何財產,將返回此。我是否需要解析並提取這個自我,或者是否有人知道NSURLRequest中是否有屬性或方法會返回此值。NSURLRequest和請求的頁面

非常感謝您的幫助。 tony

回答

2

如果我正確理解你,你想轉換爲NSString,然後使用它的方法。與你的NSURLRequest開始,你會做這樣的事情(注意,我輸入到這個網頁並沒有編譯它):

NSURL *url = [request URL]; 
NSString *filename = [[url path] lastPathComponent]; 

如果您的網址我們像http://www.foo.com/bar/baz.html,這會給你「巴茲html的」。

1

我想你是指URL的路徑。下面的代碼提取了一個字符串s,其值是@「/ cheese.html」。

NSURL* u = [NSURL URLWithString:@"http://www.wibble.com/cheese.html"]; 
NSString* s = [u path]; 

看一看它告訴你一個網址如何彌補了RFC 1808的文檔,然後閱讀蘋果的NSURL文檔,它告訴你如何提取URL的部分。

0

NSURL可以提取大部分的URL元素。我懷疑你的意思是可以通過路徑消息訪問的路徑。

如果你真的想從路徑擴展,我建議你使用路徑,然後檢查返回的NSString或通過發送absoluteString消息將整個URL轉換爲字符串。修剪NSString的擴展可以用很多方法來完成。