我正在尝试使用LDAP集成检索存储在Active Directory中的用户照片。我想在BSP应用程序中显示图片。我使用'LDAP_SIMPLEBIND'函数处理了登录操作。它的工作就像一个魅力。但是我无法拍照。我使用此过滤器尝试了“LDAP_SEARCH”:
(&(objectCategory=person)(objectClass=user)(samaccountname=*))
此函数返回“thumbnailphoto”属性,但我认为它不是可以转换为jpeg或png文件的字节数组!
函数调用:
CALL FUNCTION 'LDAP_SEARCH'
EXPORTING
base = base
* scope = scope
* mode = mode
* CROP = 'X'
filter = filter
* timeout = timeout
* IMPORTING
* LDAPRC = LDAPRC
TABLES
dns_out = lt_dns_out
attrs_io = lt_attrs_io
values_out = lt_vals_out
EXCEPTIONS
no_authoriz = 1
conn_outdate = 2
ldap_failure = 3
not_alive = 4
other_error = 5
OTHERS = 6.
在lt_attrs_io
和lt_vals_out table
中,我有两行关于thumbnailphoto。我尝试以其他视图和十六进制格式显示。
例如:
?#???yN?????uF
88218628259840
我错过了什么?我在ABAP上找不到关于这个问题的任何内容。在C#,Java或nodejs中有一些解决方案,但据我所知,ABAP没有。
答案 0 :(得分:2)
功能模块LDAP_SEARCH
在其文档中标记为已过时。请使用LDAP_READ
,您的thumbnailphoto应该以方便的形式提供(XSTRING)。