1

是否有随 Windows 一起提供的启用自动化的 HTTP 客户端(即我可以使用 OLE 客户端控制的东西),并且我可以假设大多数版本的 Windows 上都存在该客户端?

我打算在 SAP ABAP 程序中使用它,我希望用户可以选择通过桌面连接下载数据,而不是从 SAP 服务器发起请求。

我想看看在这种情况下是否可以对 Internet Explorer 进行 OLE 调用(尽管我不确定是否可以检索 HTTP 请求的响应),但我不知何故认为这样的客户端会以某种方式“更干净”。

4

3 回答 3

1

好的,在输入这​​个问题时,我在 Google 上搜索了“vbscript http request”,下面的 Stack Overflow 问题通过指向MSXML2.XMLHTTP我将通过 OLE 实例化的对象来回答我的问题:HTTP GET in VBS

使用这个答案,我们可以编写一些 ABAP 代码,如下所示:

data: httpclient type ole2_object.
data: response type string.

create object httpclient 'MSXML2.XMLHTTP' no flush.

call method of httpclient 'open' no flush
  exporting
    #1         = 'GET'
    #2         = 'http://www.google.co.za'
    #3         = 0.
call method of httpclient 'send'.

get property of httpclient 'responseText' = response.

在 last 之后GET PROPERTY,响应字符串变量包含 HTTP 响应的正文。

于 2013-02-27T10:11:47.460 回答
0

CL_HTTP_CLIENT 类不适用于您的情况吗?根据我的经验,使用 OLE 自动化会使您的程序不太稳定。

于 2013-03-05T04:37:56.090 回答
0

使用 HTTP_POST 或 HTTP_GET 函数。有一个 RFC_DESTINATION 参数。使用值 SAPHTTP 通过用户桌面访问站点 SAPHTTPA 通过 SAP 服务器进行访问。

于 2013-03-25T06:37:26.960 回答