2013-04-27 56 views
0

我想填写一个网页表单并提交数据,而不让用户看到网页表单本身。我曾尝试使用AFNetworking在后台执行HTTP POST,但我碰到了problem which I couldn't solve,并决定尝试其他方法。将图像上传到webview中而不显示图像选择器

这次,我有一个隐藏在背景中的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

您应该直接使用一个NSHTTPRequestPOST图像到表单。不需要使用隐藏或其他方式的UIWebView。有关如何实现此目的的示例,请参见this answer。这是another example这个。