[webView loadRequest:[NSURLRequest requestWithURL:[NSString stringWithFormat:@"https://site.com?status=%@", status]]];
// 崩潰:requestWithURL: 參數需 NSURL*,實際傳入 NSString*
NSString *urlString = [NSString stringWithFormat:@"https://site.com?status=%@", status];
NSURL *url = [NSURL URLWithString:urlString];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[webView loadRequest:request];
// 一行鏈式寫法
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://site.com?status=%@", status]]]];
NSURLRequest.requestWithURL: 參數類型為 NSURL *,非 NSString *。NSURL.URLWithString: 將字符串轉為 URL 對象,會自動處理編碼(空格、中文等)。stringByAddingPercentEncodingWithAllowedCharacters::NSString *encoded = [urlString stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];
NSURL *url = [NSURL URLWithString:encoded];
WKWebView *wkWebView = [[WKWebView alloc] initWithFrame:self.view.bounds configuration:[WKWebViewConfiguration new]];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[wkWebView loadRequest:request];
id 類型參數),運行時崩潰 unrecognized selector sent to instance。NSURL 不支援 file:// 以外的本地路徑,本地 HTML 用 loadHTMLString:baseURL: 或 loadFileURL:allowingReadAccessToURL:。NSAppTransportSecurity 或強制 HTTPS。NSURLRequest 參數類型錯誤是新手高頻崩潰,牢記:字符串→NSURL→NSURLRequest→loadRequest,四步不亂序。