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

转发日志数据

  •  0
  • Eli  · 技术社区  · 15 年前

    我有一个网站有一个用户可以输入的表单。我希望它可以替换具有相同字段的第三方网站(自动任务)表单。通常情况下,我只需要将表单中的操作转到第三方表单指向的位置,然后为自己的字段使用相同的ID/名称值,但这有几个问题:

    自动任务的表单不仅仅是简单的多字段表单。它们至少导入了15个javascript,这些javascript使一些神奇的和无法识别的事情发生,而且它们非常难以阅读和理解。这会导致两个问题,一个是表单需要很长的时间来加载(4个字段大约需要5秒钟),另一个是如果“自动任务”更改了任何内容,我将需要重做整个表单(非常冗长和糟糕,我已经需要重做两次了)。

    为了使加载时间更透明,我将自动任务表单的副本放在iframe中。这样,网站的其余部分就可以独立于我在自动任务登录过程中必须包含的大量脚本加载。

    理想情况下,我希望能够做的是在我的站点上使用我想要的任何名称和配置设置这4个字段,然后将这些发布数据发送到我自己的PHP脚本,该脚本将自动(并且透明地)通过适当字段中的autotask表单直接提交这些数据。如果我需要匹配身份证/姓名,那没关系。我可以在这个站点上使用HTML、JavaScript和PHP。

    编辑: autotask具有内置的get处理程序,用于登录。您会注意到您在登录时有一个客户机ID(它将是URL中的“ci”变量)。如果您发送一个GET请求,其中包含客户端ID和变量“username”和“password”,那么它的自动任务登录页面会立即将您转发到客户端页面,前提是登录成功。

    5 回复  |  直到 15 年前
        1
  •  3
  •   NateDSaint    15 年前

    我认为很多人都会反对这一点,因为你是在窃取别人应用程序的功能。在这种情况下,我建议不要这样做,因为它们(autotask)已经有了一个面向外部的API。 http://www.autotask.com/press/news_and_press_releases/071006.htm

    我认为你最好利用它,开发一些在系统约束下运行良好的东西。

        2
  •  0
  •   helloandre    15 年前

    一个真正令人信服的方法是让您的页面加载一个带有一些通用ID/名称的表单。有一个PHP脚本,该脚本可以从页面中获取正确的ID/名称,并将Ajax脚本保存到表单中。

    这样,您就可以避免在初始页面加载时对其内容进行iframing,或者在初始页面加载时对其页面进行刮擦,从而更改ID/名称,从而使其始终保持最新状态。

        3
  •  0
  •   Peter Bailey    15 年前

    我可以写一篇大文章来解释这一点,但我真的认为现在是让 someone else's words do the work .

        4
  •  0
  •   Community CDub    8 年前

    自动任务的表单不仅仅是简单的多字段表单。它们至少导入了15个javascript,这些javascript使一些神奇的和无法识别的事情发生,而且它们非常难以阅读和理解。

    听起来像反垃圾邮件措施?如果是这样,那么它们可能会随着时间而改变。

    所以:跟随 NateDSaint's advice !

        5
  •  0
  •   Eli    15 年前

    作为后续工作,事实证明,对于自动任务,它们有get处理程序,因此您可以通过get发送信息。问题解决了。