0

我正在尝试获取自定义 url 方案以在应用程序中打开 url。所以 url 方案将是“example://confirm?1234”,我想将查询字符串用作 UIWebView 的 url 的一部分。这样会使 UIWebView 打开“ http://www.example.com/confirm?1234 ”。这是在 AppDelegate 中完成的,所以我在控制 FirstViewController UIWebView 时也遇到了问题。任何帮助都会受到喜爱。

- (BOOL)application:(UIApplication *)application
        openURL:(NSURL *)url
        sourceApplication:(NSString *)sourceApplication
        annotation:(id)annotation {
    NSLog(@"String: %@", [url query]);  
    NSString *web = @"http://www.example.com/confirm?[url query]";
    NSURL *url = [NSURL URLWithString:web];
    NSURLRequest *requestUrl = [NSURLRequest requestWithURL:url];
    [webView loadRequest:requestUrl];
}
4

2 回答 2

0

我想到了。如果其他人有类似的问题,下面的代码会有所帮助。

- (BOOL)application:(UIApplication *)application
        openURL:(NSURL *)url
 sourceApplication:(NSString *)sourceApplication
     annotation:(id)annotation {
 if ([[url host] isEqualToString:@"confirm"]) {
 NSLog(@"String: %@", [url query]);
 NSString *urlAddress = [NSString stringWithFormat:@"http://www.example.com/confirm.php?key=%@", [url query]];
NSURL *url2 = [NSURL URLWithString:urlAddress];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url2];
 [webView loadRequest:requestObj];
 }
于 2013-05-20T14:01:36.540 回答
0

您需要一个字符串格式来构建新的 URL:

NSLog(@"String: %@", [url query]);  
NSString *web = [NSString stringWithFormat:@"http://www.example.com/confirm?%@", [url query]];
NSURL *url = [NSURL URLWithString:web];
于 2013-05-05T18:35:26.643 回答