我正在尝试填写网络表单并提交数据,而不让用户看到网络表单本身。我曾尝试使用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];
}];
我有什么方法可以做同样的事情,但上传图片/文件?
答案 0 :(得分:0)
您应该直接使用NSHTTPRequest
POST
图片到表单。无需使用UIWebView
,隐藏或其他方式。有关如何实现此操作的示例,请参阅this answer。以下是another example。