【发布时间】:2013-04-21 15:25:06
【问题描述】:
我正在尝试填写网络表单并提交数据,但不让用户看到网络表单本身。我曾尝试使用 AFNetworking 在后台执行 HTTP POST,但我遇到了 problem which I couldn't solve 并决定尝试其他方法。
这一次,我有一个隐藏在后台的UIWebView。然后,我使用 webViewDidFinishLoad:webView 中的 Javascript 编辑各个字段中的文本,如下所示:
NSMutableDictionary *params = [[NSMutableDictionary alloc] init];
[params setObject:nameField.text forKey:@"name"];
[params setObject:emailField.text forKey:@"email"];
[params setObject:titleField.text forKey:@"title"];
[params setObject:dateString forKey:@"link"];
[params setObject:descriptionTV.text forKey:@"content"];
[params setObject:tag forKey:@"tags"];
[params enumerateKeysAndObjectsUsingBlock:^(id key, id object, BOOL *stop) {
NSLog(@"%@ = %@", key, object);
NSString *javascriptString = [NSString stringWithFormat:@"document.getElementById('%@').value = '%@'",key,object];
[webView stringByEvaluatingJavaScriptFromString:javascriptString];
}];
除了上传图像/文件之外,我有什么办法可以做到这一点吗?
【问题讨论】:
标签: iphone ios cocoa-touch uiwebview