如何从ABAP发出HTTP" PUT或DELETE"请求?

2020-08-25 06:14发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我能够使用以下代码与...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我能够使用以下代码与ABAP的RESTful Web服务建立连接:

呼叫方法CL_HTTP_CLIENT => CREATE_BY_DESTINATION

导出

DESTINATION ='CONSTELLATION'

导入

客户= httpClient。

呼叫方法HTTPCLIENT-> REQUEST-> SET_HEADER_FIELD

导出

NAME ='〜request_method'

VALUE ='POST'。 "这里不适合使用'删除'或'放置'

呼叫方法HTTPCLIENT-> REQUEST-> SET_HEADER_FIELD

导出

NAME ='内容类型'

VALUE ='application/xml'。

... ...

但是,问题是,这似乎仅适用于POST和GET,而不适用于PUT或DELETE。

任何人都能够成功发出PUT或DELETE HTTP请求。 请注意,我已经尝试了HTTP 1.0和1.1,但似乎没有什么区别。

真的很感谢您的帮助!

谢谢

魏唯

4条回答
2020-08-25 06:29 .采纳回答

我从没尝试过使用PUT或DELETE,并且我不太确定在查看接口IF_HTTP_REQUEST(在7.00系统中)时该方法是否可以工作:我看到了一个SET_METHOD方法(我将使用它代替SET_HEADER_FIELD来使用) 正在使用)。 此方法在描述 Set the method(GET,POST等)中声明-因此,此类建议不仅仅包含 get 和 post 。 但是,当我查看接口的属性时,我只会看到GET(CO_REQUEST_METHOD_GET)和POST(CO_REQUEST_METHOD_POST)的常量。

在线帮助也没有太多用处,例如 请参阅[示例程序:执行HTTP请求| http://help.sap.com/saphelp_nw04s/helpdata/en/1f/93163f9959a808e10000000a114084/frameset.htm ]。

奇怪的是,如果SAP ABAP AS通过ICF充当http服务器,则可以实现HTTP请求的处理程序,该处理程序可以接收和评估所有可能的方法。 很抱歉,没有好的答案...

一周热门 更多>