代码之家  ›  专栏  ›  技术社区  ›  sholsapp

代理使用javascript的页面

  •  0
  • sholsapp  · 技术社区  · 14 年前

    我正在构建一个代理,并试图处理使用JavaScript的页面。页面上有这样的按钮:

    <input type="submit" ...cut this out... onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(...cut this out...)) />
    

    当我从代理服务器单击此按钮时,URL将被重写为如下所示(请注意此处插入的javascript代码):

    http://domain.com/proxy/index-new.php?q=https://proxiedomain.com/javascript:WebForm_DoPostBackWithOptions(new%20WebForm_PostBackOptions(...cut this out...))
    

    我不知道如何在代理服务器中处理这个问题。当我不使用代理时,头会被发送到一个完全不同的页面(URL不包括这个javascript)。有没有人能给我一些提示,告诉我应该如何调查或阅读才能更好地理解这个问题?据我目前所知,我需要执行这个javascript(这需要一个熟练的浏览器)。

    1 回复  |  直到 14 年前
        1
  •  1
  •   scunliffe    14 年前

    任何指向的链接 javascript:... 将运行javascript,但 不一定 加载页面。

    我将不使用这些链接,而是确保表单 action URL设置为您的代理服务器,以及任何 location.href = 'http://www.example.com/fully_qualified_urls'; 将替换为代理URL。

    例如,用一个简单的regex替换“new-url”的“old-url”(考虑到HTTP和HTTPS协议之间的差异)就足够了。

    注: 我知道这不是“简单”,而是试图检查 javascript: 基于“链接”来修改其行为将非常尴尬。