如何将数据从网页传递到应用程序?

时间:2010-04-23 14:53:43

标签: post webforms

试图找出一种方法,我可以将一些数据/字段从网页传回我的应用程序。这需要在Windows / Linux / Mac上运行,所以我不能使用DLL或ActiveX。有什么想法吗?

这是流程: 1.应用程序收集一些数据,然后使用POST将其发送到网页,该应用程序嵌入应用程序或弹出新的IE窗口。 2.网页执行一些服务,然后需要将结果中继回应用程序。

我能想到的唯一方法就是在页面中用cookie或类似的东西在本地编写结果,并让应用程序监视该文件夹中的特定文件。

或者,在将控制权传递给页面后创建应用程序命中的Web服务,并且当页面完成时,Web服务将返回数据。这听起来似乎有一些性能上的缺点。

有人可以为此提出更好的解决方案吗?

由于

5 个答案:

答案 0 :(得分:2)

我的建议:

将处理逻辑从Web页面拆分为单独的程序集。然后,您可以创建一个Web服务来处理所有处理,而无需将控制权传递给页面。

然后,您的应用程序可以直接调用Web服务,然后序列化结果并轻松处理数据。

<强>更新

由于该页面是由第三方提供的,因此您显然无法解决任何问题。接下来最好的办法是处理应用程序内部的整个Web请求(而不是弹出一个新窗口)。

使用此方法,您可以获取原始HTTP响应(和页面标记)并直接使用它。然后,您可以解析响应流并从中收集所需的数据。

答案 1 :(得分:0)

在执行HTTP请求期间,您应该能够检索页面返回的文本。例如,如果您的HTTP POST是命中Java servlet,则会触发doPost()方法然后执行您的操作,然后您可以使用Response对象中的PrintWriter对象(PrintWriter out = response.getWriter() ;)并将文本写回调用应用程序。我不确定这会有帮助吗?

答案 2 :(得分:0)

事实

  

网页由第三方托管   他们需要做的   在他们的服务器上处理。

对这个问题很重要。

我喜欢你的应用程序在将数据传递到第三方网页后调用web服务的想法。如果您担心在等待来自此Web服务的结果时阻止您的应用程序,则可以始终异步调用Web服务。

答案 3 :(得分:0)

另一个选择是您的应用程序实现XML-RPC server,可以使用PHPPython或您用来构建网站的任何内容从网页调用

REST服务器也可以完成这项工作......

答案 4 :(得分:0)

也许iOpus产品iMacros可能就是您所需要的。他们的产品iMacros非常擅长收集数据和发布数据。我已将它用于条件数据挖掘,并且有大量示例可用于各种任务。

我承认有一点学习曲线,但它与URL,表格和其他软件的交互方式确实非常强大。

您可以查看一些示例,看看它是否满足您的需求: http://www.iopus.com/imacros/support/

这里还有一个免费的Firefox加载项: http://www.iopus.com/imacros/firefox/