ABAP 调用HTTP上传附件( 二 )

将文件流放入client中并发送,接收返回结果
"-----------------------------@斌将军-----------------------------lv_len = xstrlen( lv_xstring ).CALL METHOD lo_part->set_dataEXPORTINGdata= https://www.huyubaike.com/biancheng/lv_xstringoffset = 0length = lv_len."发送CALL METHOD lo_http_client->sendEXCEPTIONShttp_communication_failure = 1http_invalid_state= 2http_processing_failed= 3OTHERS= 4.IF sy-subrc <> 0.CALL METHOD lo_http_client->get_last_errorIMPORTINGmessage = DATA(lv_error_message).CALL METHOD lo_http_client->close.e_return-type = 'E'.e_return-message = '通信失败'.RAISE error.ENDIF."接收CALL METHOD lo_http_client->receiveEXCEPTIONShttp_communication_failure = 1http_invalid_state= 2http_processing_failed= 3OTHERS= 9.IF sy-subrc <> 0.CALL METHOD lo_http_client->get_last_errorIMPORTINGmessage = lv_error_message.CALL METHOD lo_http_client->close.e_return-type = 'E'.e_return-message = '接收失败'.RAISE error.ENDIF."提取返回字符串CLEAR:lv_code,lv_reason.CALL METHOD lo_http_client->response->get_statusIMPORTINGcode= lv_codereason = lv_reason."获取返回的JSONCLEAR:lv_rec_json.lv_rec_json = lo_http_client->response->get_cdata( )."关闭接口CALL METHOD lo_http_client->close."-----------------------------@斌将军-----------------------------3、补充说明3.1、文件类型在设置上传文件的类型时需要注意

ABAP 调用HTTP上传附件

文章插图
文件有对应的类型参数,例如:
TXT:text/plain
Excel:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
Word:application/vnd.openxmlformats-officedocument.wordprocessingml.document
PDF:application/pdf
PNG:image/png
应用程序:application/octet-stream
测试得出以下结论:(可能有出入,仅供参考)
1、如果上传文件时,设置了对应的参数,
1.1、且浏览器支持预览,则访问文件地址时 , 直接能在浏览器中显示文件的内容,比如:TXT、PDF、PNG等
1.2、如果浏览器不支持预览,则访问文件地址时 , 浏览器会自动下载对应的文件到本地,比如Excel、Word、应用程序等
2、如果上传文件时,没有设置对应的参数 , 比如直接设置application/x-www-form-urlencoded、application/octet-stream,就算是TXT文件,浏览器也不会支持预览 , 直接下载
3、如果上传文件时,没有设置正确的参数,比如Excel文件,设置了text/plain参数,则会导致文件识别失败 , 浏览器既不下载也不能正确预览
3.2、参数细节关于参数中的q=0.8
ABAP 调用HTTP上传附件

文章插图
q:相对品质因数 。它指定用户喜欢哪种语言 , 范围从0到1,默认为1 。
该质量值表示用户对由该范围指定的语言的偏好的估计
TRANSLATE with
ABAP 调用HTTP上传附件 xEnglish
ArabicHebrewPolishBulgarianHindiPortugueseCatalanHmong DawRomanianChinese SimplifiedHungarianRussianChinese TraditionalIndonesianSlovakCzechItalianSlovenianDanishJapaneseSpanishDutchKlingonSwedishEnglishKoreanThaiEstonianLatvianTurkishFinnishLithuanianUkrainianFrenchMalayUrduGermanMalteseVietnameseGreekNorwegianWelshHaitian CreolePersian 
ABAP 调用HTTP上传附件
ABAP 调用HTTP上传附件
ABAP 调用HTTP上传附件
ABAP 调用HTTP上传附件  TRANSLATE with
ABAP 调用HTTP上传附件 COPY THE URL BELOW
ABAP 调用HTTP上传附件
ABAP 调用HTTP上传附件 Back
EMBED THE SNIPPET BELOW IN YOUR SITE
ABAP 调用HTTP上传附件Enable collaborative features and customize widget: Bing Webmaster PortalBack  此页面的语言为英语 翻译为中文(简体)