我正在尝试为网站制作应用程序(有点像facebook应用程序)。问题是,登录需要启用javascript。我在文档中找不到任何引用使用不属于UIWebView类的javascript的内容。
答案 0 :(得分:0)
我工作的公司也一样。你实际上是以错误的方式接近这个。 NSURLConnection允许您将所需的所有信息传递给服务器,即用户名和密码。有时会有使用Javascript提交的其他参数。你要做的就是扫描这个变量名的必要页面,基本上使用一个标记器获取变量,然后使用NSURLConnection POST / GET或URL的一部分(或者它的任何方式)将其发送回服务器。如果您想了解我如何做的详细信息,请与我们联系。
以下是使用Javascript值执行NSURLConnection的代码块:
if (postData) {
[theRequest setHTTPMethod:HTTP_METHOD_POST];
[theRequest setValue:FORM_ENCODING forHTTPHeaderField:@"Content-Type"];
[theRequest setHTTPBody:postData];
}
if(cookies)
[theRequest setAllHTTPHeaderFields:cookies];
connection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self startImmediately:YES];
我的postData是一个字符串形式,如:“username = Rudigern& password = thePassword& JSVariable = somelongtoken”
这当然是特定于网站的,并且通过扫描JSVariable的页面来完成一些加长。有些网站还需要cookie以及这些变量,这是由cookie行完成的。 theRequest的类型为NSURLMutableRequest。
这是查找令牌的方法:
[scanner scanUpToString:@"JSVariable=" intoString:somelongtoken];