[英]NSURL nil because of spaces
端點不關心URL中是否包含空格,但NSURL
似乎可以。
我得到的NSURL *url = [NSURL URLWithString:string];
nil
NSURL *url = [NSURL URLWithString:string];
每次:
NSString *string = [NSString stringWithFormat:@"http://endpoint.com/search?one=%@&two=%@", textField1.text, textField2.text];
NSURL *url = [NSURL URLWithString:string];
NSString *urlAbsolute = [url absoluteString];
[theManager GET:urlAbsolute parameters:nil progress:nil success:^(NSURLSessionTask * _Nonnull task, id _Nullable responseObject) {
我想將空格傳遞到端點中,因為我想從端點中獲取空格。 (即傳入“星球大戰”,因此如果我從字符串中刪除了空格,我將得到“星球大戰”而不是“星球大戰”)。
有任何想法嗎?
將字符串編碼與允許的字符一起使用請找到以下代碼。
NSString *string = [NSString stringWithFormat:@"http://endpoint.com/search?one=%@&two=%@", textField1.text, textField2.text];
NSURL *url = [NSURL URLWithString:[string stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]]];
試試這個代碼:
NSString *firstArgument = [self.textField1.text stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]];
NSString *secondArgument = [self.textField2.text stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]];
NSString *string = [NSString stringWithFormat:@"http://endpoint.com/search?one=%@&two=%@", firstArgument, secondArgument];
NSURL *url = [NSURL URLWithString:string];
NSString *urlAbsolute = [url absoluteString];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.