2009-10-01 104 views
4

我们有一个内置调度功能的金融产品,可以在夜间批量运行。该产品还可以使用Web服务根据需要启动每批次。从脚本或批处理文件调用Web服务

我想知道是否可以从.bat文件或其他类型的批处理/脚本文件调用Web服务。如果可能的话,我们可以从公司调度服务(Autosys)调用批处理文件。

我不想写一个exe来调用这个如果可能的话(我的控制之外的情况)。

KISS做法:)

回答

0

KISS方法

在bat文件

iexplore.exe <url to webpage that consumes the webservice> 

将这项工作

+0

喜安德鲁,是的,可以工作。但是在通话结束后IE不会保持打开状态。不是最好的解决方案,因为这是在一个服务器上可能没有任何人登录一两周?可能不像我希望的那样光滑。 – 2009-10-02 02:09:01

1

恕我直言,KISS要求您不要使用没有内置Web服务支持的脚本语言。你用这种语言做的任何事情都会使事情复杂化,以提供缺失的能力。 KISS说在Visual Studio中创建一个控制台应用程序,添加一个服务引用,调用必要的方法,然后在你的.bat文件中运行控制台应用程序。 .bat文件内置了对运行控制台应用程序的支持。

+0

嗨,John,“恕我直言,KISS要求您不要使用没有内置Web服务支持的脚本语言”。我没有提及“... .bat文件或其他类型的批处理/脚本文件”。 :) – 2009-10-02 02:14:08

+0

是的,但我认为你提供了“KISS”作为原因。我回应说,这不会是以脚本方式调用Web服务的最简单方法。从控制台应用程序中调用服务,然后由脚本调用该服务将是最简单的。 – 2009-10-02 06:05:43

+0

答案的问题在原始问题中,“如果可能,我不想写一个exe来调用它(我无法控制的情况)”。 所以我真的在寻找一个脚本来完成这项工作。无论如何感谢您的反馈。 – 2009-10-03 13:18:54

4

这是John'o的答案的纺丝使用Microsoft.XmlHttp(这应该已经存在于服务器\工作站上)

创建一个.vbs一个

Set http = CreateObject("Microsoft.XmlHttp") 
http.open "GET", "http://www.webservicex.net/stockquote.asmx?WSDL", FALSE 
http.send "" 
WScript.Echo http.responseText 
相关问题