3

要检索用户密码,我在以下位置搜索它们:

- (void)webView:(WebView *)webView decidePolicyForNavigationAction:(NSDictionary *)actionInformation request:(NSURLRequest *)request frame:(WebFrame *)frame decisionListener:(id )listener

当用户提交登录表单时,这会被调用。

但是,我遇到了以下网站:商店

在这里,当用户提交登录时,不会引发来自 WebPolicyDelegate 的事件。似乎没有任何动作发生。保存密码的方式适用于我测试过的所有其他网站(20+)。

Any1 知道这里发生了什么吗?当用户提交表单时,如何在此站点检索密码内容?

更新

由于UIWebViewDelegate 没有监控 XMLHttpRequest,我现在收到了事件调用?,但是,我无法访问密码元素。我怎样才能找回它?

问题是[actionInformation objectForKey:@"WebActionFormKey"];内部调用webView:decidePolicyForNavigationAction:(NSDictionary *)actionInformation request:frame:decisionListener:返回 nil

4

1 回答 1

2

您要访问的页面使用 AJAX 登录。

然而,WebPolicyDelegate仅在页面加载时调用。AJAX 调用不是典型的页面加载,地址栏中的 URL 在提交登录表单后仍然保持不变。总之,没有调用 WebPolicyDelegate,因为没有发生典型的导航操作。

于 2012-09-24T23:30:41.083 回答