当前位置: 首页> 娱乐> 明星 > 聊城网站制作公司_深圳公司免费网站建设怎么样_百度小程序_互联网论坛

聊城网站制作公司_深圳公司免费网站建设怎么样_百度小程序_互联网论坛

时间:2025/7/9 17:43:18来源:https://blog.csdn.net/LH26988/article/details/144891585 浏览次数:0次
聊城网站制作公司_深圳公司免费网站建设怎么样_百度小程序_互联网论坛

FUNCTION ztools_call_http .
*"----------------------------------------------------------------------
*"*"Local interface:
*"  IMPORTING
*"     REFERENCE(IP_URL) TYPE  STRING
*"     REFERENCE(IP_BODY) TYPE  STRING OPTIONAL
*"     REFERENCE(IP_METHOD) TYPE  STRING DEFAULT 'POST'
*"  EXPORTING
*"     REFERENCE(V_SUBRC) TYPE  CHAR1
*"     REFERENCE(V_MESSAGE) TYPE  BAPI_MSG
*"     REFERENCE(V_RESPON) TYPE  STRING
*"     REFERENCE(V_XRESPON) TYPE  XSTRING
*"----------------------------------------------------------------------DATA lv_message TYPE string.CLEAR:lv_message,v_subrc,v_message,v_respon.DATA http_client  TYPE REF TO if_http_client.DATA lv_url TYPE string.lv_url = ip_url.IF lv_url IS INITIAL.v_subrc = 'E'.v_message = 'URL链接为空'.RETURN.ENDIF."创建客户端请求CALL METHOD cl_http_client=>create_by_urlEXPORTINGurl                = lv_urlIMPORTINGclient             = http_clientEXCEPTIONSargument_not_found = 1plugin_not_active  = 2internal_error     = 3OTHERS             = 4.IF sy-subrc <> 0.v_subrc = 'E'.IF http_client IS INITIAL.v_message = '创建http连接失败!'.ELSE.http_client->get_last_error( IMPORTING message = lv_message ).CONCATENATE '创建http连接失败!' lv_message INTO v_message.ENDIF.RETURN.ENDIF.http_client->propertytype_logon_popup = http_client->co_disabled."设定调用服务CALL METHOD http_client->request->set_methodEXPORTINGmethod = ip_method."设定传输请求内容格式以及编码格式CALL METHOD http_client->request->if_http_entity~set_content_typeEXPORTINGcontent_type = 'application/json; charset=utf-8'.
*  CALL METHOD http_client->request->set_header_field
*    EXPORTING
*      name  = 'Content-Type'
*      value = 'application/JSON;charset=utf-8'.IF ip_body IS NOT INITIAL.DATA length TYPE i.length = STRLEN( ip_body ).CALL METHOD http_client->request->set_cdataEXPORTINGdata   = ip_bodyoffset = 0length = length.ENDIF."发送请求CALL METHOD http_client->sendEXCEPTIONShttp_communication_failure = 1http_invalid_state         = 2.IF sy-subrc <> 0.http_client->get_last_error( IMPORTING message = lv_message ).CONCATENATE '创建http连接失败!' lv_message INTO v_message.v_subrc = 'E'.RETURN.ENDIF."读取远程服务返回的处理过结果。CALL METHOD http_client->receiveEXCEPTIONShttp_communication_failure = 1http_invalid_state         = 2http_processing_failed     = 3.IF sy-subrc <> 0 .http_client->get_last_error( IMPORTING message = lv_message ).CONCATENATE '获取返回消息失败!' lv_message INTO v_message.v_subrc = 'E'.RETURN.ELSE."读取返回返回内容v_subrc = 'S'.v_message = '调用接口成功!'.v_respon = http_client->response->get_cdata( ).v_xrespon = http_client->response->get_data( ).ENDIF.
ENDFUNCTION.

调用:下载URL

METHOD downloadurl.DATA: lv_url TYPE string,lv_method TYPE string,lv_json TYPE string.DATA:lv_subrc TYPE  char1,lv_message  TYPE  bapi_msg,lv_respon TYPE  string,lv_xrespon  TYPE  xstring.DATA ls_web TYPE ztweb_param.SELECT SINGLE * INTO ls_web FROM ztweb_param WHERE sys = 'YQZL' AND fun = 'DOWNLOADU'.lv_url = ls_web-url.lv_method = ls_web-method.DATA:BEGIN OF ls_data,cust_id TYPE char10,"为财资系统十位集团客户号download_no TYPE char30,"下载编号trade_type TYPE char30,"交易类型 RECEIPT:回单END OF ls_data.DATA:BEGIN OF ls_body,_data LIKE ls_data,END OF ls_body.DATA:BEGIN OF ls_res,retcode TYPE char4,"返回代码retmsg TYPE char512,"返回信息downloadurl TYPE char512,"下载URLtransstate TYPE char10,"交易状态transmsg TYPE char100,"交易信息END OF ls_res.DATA:BEGIN OF ls_respon,data LIKE ls_res,END OF ls_respon.ls_data-download_no = download_no.ls_data-cust_id = custid.ls_data-trade_type = trade_type.ls_body-_data = ls_data.lv_json = zcl_json=>serialize( data = ls_body pretty_name  =  'X' ).CALL FUNCTION 'ZTOOLS_CALL_HTTP'EXPORTINGip_url    = lv_urlip_body   = lv_jsonip_method = lv_methodIMPORTINGv_subrc   = lv_subrcv_message = lv_messagev_respon  = lv_responv_xrespon = lv_xrespon.IF lv_subrc = 'S'.zcl_json=>deserialize( EXPORTING json = lv_respon CHANGING data = ls_respon ).IF ls_respon-data-retcode EQ '0000'.IF ls_respon-data-transstate EQ '0'.exp_type = 'S'.downloadurl = ls_respon-data-downloadurl.exp_msg = '请求成功'.ELSE.exp_type = 'E'.exp_msg = ls_respon-data-transmsg.ENDIF.ELSE.exp_type = 'E'.exp_msg = ls_respon-data-retmsg.ENDIF.ELSE.exp_type = lv_subrc.exp_msg = lv_message.ENDIF.
ENDMETHOD.
关键字:聊城网站制作公司_深圳公司免费网站建设怎么样_百度小程序_互联网论坛

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: