0
當我級聯兩個字符串獲得一個網址,下面是串聯字符串的方法: 這樣做的目的是從一個URL即走:NSURL錯誤網址錯誤使用stringByAddingPercentEscapesUsingEncoding
https://vula.uct.ac.za/portal/pda/9f563cb2-24f9-481f-ab2e-631e85c9f3aa/tool-reset/10f71bdb-24b9-4060-bf6d-2c9654253aa3
到僅顯示所述網頁的一部分,並且是更短的URL:
https://vula.uct.ac.za/portal/tool-reset/10f71bdb-24b9-4060-bf6d-2c9654253aa3
-(NSString *)cropURL:(NSString *)inputURL{ NSString *outputURL ; NSRange match; match = [inputURL rangeOfString: @"tool-reset"]; //Gives the index and range of the string "tool-reset" int toolLen = match.location+match.length ; //Gives the index after "tool-reset" NSString*tempIdentifier = [inputURL substringFromIndex:toolLen] ; //Gets the characters after "tool-reset" NSString *firstURL = @"https://vula.uct.ac.za/portal/tool-reset" ; //First part of URL NSMutableArray *concatURL = [[NSMutableArray alloc] initWithCapacity:2] ; // Array to concat firstURL and tempIdentifier [concatURL addObject:(NSString *)firstURL] ; [concatURL addObject:(NSString *) tempIdentifier] ; outputURL = [concatURL componentsJoinedByString:@""] ; //Concatenatd to outputURL outputURL = [outputURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding] ; //Encoding return outputURL ;
}
*請注意,該網站需要用戶登錄,這是做得比較早,一旦登錄成功,這些方法只被調用。
我送這個級聯的URL與一個GET的連接方法,我得到的錯誤如下:
Error Domain=NSURLErrorDomain Code=-1000 "bad URL" UserInfo=0x1d51f7d0 {NSUnderlyingError=0x1e547980 "bad URL", NSLocalizedDescription=bad URL}
的unconcatenated網址不存在這個問題,但。
的URL中的問題是:
https://vula.uct.ac.za/portal/tool-reset/10f71bdb-24b9-4060-bf6d-2c9654253aa3
的URL是正確的,並已經過測試。 (再次提醒,該網站要求你登錄)
我確實使用了:
stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding
把它發送到連接之前,但我仍然得到同樣的錯誤。
我所有的其他鏈接工作,唯一不工作的鏈接是連接的鏈接。這些連接的字符串可以在普通的Web瀏覽器中工作。
任何想法可能是錯的?
@阿里母雞可以粘貼您的級聯碼。 – icodebuster
@icodebuster補充說。 –
@ ali-hen您是否將字符串轉換爲NSURL格式? – icodebuster