用ABAP 生成二維碼 QR Code

i042416發表於2018-02-28

除了使用我的這篇blogStep by step to create QRCode in ABAP Webdynpro提到的使用ABAP webdynpro生成二維碼之外,也可以通過使用二維碼線上生成網站提供的service來生成二維碼。

二維碼線上生成網站:

http://www.makepic.com/qrcode.php

在網頁上輸入要生成的二維碼資料來源,校驗級別和圖片大小,點生成即可看到生成的二維碼圖片:

用ABAP 生成二維碼 QR Code

下面是用ABAP code 利用上述service生成二維碼的程式碼:

DATA:ls_form type zcl_http_tool=>ty_name_pair,
lt_header type zcl_http_tool=>tt_name_pair,
lt_form type zcl_http_tool=>tt_name_pair,
lv_code type xstring.

ls_form = value #( name = 'data' value = 'testforQRCode' ). APPEND ls_form TO lt_form.

ls_form = value #( name = 'level' value = 'M' ). APPEND ls_form TO lt_form.

ls_form = value #( name = 'size' value = '6' ). APPEND ls_form TO lt_form.

zcl_http_tool=>send_request( iv_url = 'http://www.makepic.com/qrcode.php' iv_req_type = if_http_request=>co_request_method_post
it_form = lt_form ).

ls_form = value #( name = 'Referer' value = 'http://www.makepic.com/qrcode.php' ). APPEND ls_form TO lt_header.

zcl_http_tool=>send_request( EXPORTING iv_url = 'http://www.makepic.com/mkqr.php?data=testforQRCode&level=M&size=6' iv_req_type = if_http_request=>co_request_method_get
it_header = lt_header
IMPORTING ev_response = lv_code ). 

testforQRCode對應生成的二維碼:

用ABAP 生成二維碼 QR Code

用手機上的二維碼掃描應用能夠成功掃描出來:

用ABAP 生成二維碼 QR Code

zcl_http_tool的程式碼在我的github上(因為用於demo用途,沒有加對應的出錯處理)

要獲取更多Jerry的原創技術文章,請關注公眾號"汪子熙"或者掃描下面二維碼:


用ABAP 生成二維碼 QR Code
用ABAP 生成二維碼 QR Code

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2151357/,如需轉載,請註明出處,否則將追究法律責任。

相關文章