【发布时间】:2014-05-26 05:46:35
【问题描述】:
如何通过 Objective-C 以编程方式按下网站上的按钮?目前,我向网站发送 HTTP 帖子并检索返回的 NSData:
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%lu", (unsigned long)[postData length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:@"https://grades.bsd405.org/Pinnacle/Gradebook/Logon.aspx?ReturnUrl=%2fPinnacle%2fGradebook%2fInternetViewer%2fGradeSummary.aspx"]];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
//[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];
[request setTimeoutInterval:20];
[NSURLConnection connectionWithRequest:request delegate:self];
发送 HTTP 帖子会返回正确的 NSData,但服务器每隔几周会更新一次 HTTP 帖子属性,例如 viewState 和 eventValidation。这使我无法对这些值进行硬编码。有没有办法使用 Javascript 使用用户名和密码向网站发送新闻,或者动态输入 viewState 和 eventValidation 参数?这是我正在尝试实施此流程的网站:https://grades.bsd405.org/Pinnacle/Gradebook/Logon.aspx?ReturnUrl=%2fPinnacle%2fGradebook%2fDefault.aspx
【问题讨论】:
标签: javascript ios objective-c xcode web