点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我们无法从SAP Cloud Platform中的ABAP调用业务规则API。 请注意-使用我们的客户端ID,机密和令牌URL,我们可以从API Business Hub调用它而不会出现问题。
这是我们从ABAP(在Eclipse中)运行它时遇到的错误:
响应:{"错误":"未经授权","错误说明":"需要完全身份验证才能访问此资源"}
这是我们的源代码:
尝试。 DATA(lo_http_destination)= cl_http_destination_provider => create_by_url('https://bpmruleruntime.cfapps.us10.hana.ondemand.com/rules-service/rest/v2/workingset-rule-services')。 "可用的API端点 " https://{runtimeurl}/rules-service/rest "按目标创建HTTP客户端 DATA(lo_web_http_client)= cl_web_http_client_manager => create_by_http_destination(lo_http_destination)。 "使用API沙箱的API密钥添加标头 DATA(lo_web_http_request)= lo_web_http_client-> get_http_request()。 lo_web_http_request-> set_header_fields(VALUE#( (name ='Content-Type'值='application/json') (name ='Accept'值='application/json') (名称='APIKey'值='我们来自Business Hub的API密钥') ))。 "用于生产性API端点的可用安全方案 " OAuth 2.0 lo_web_http_request-> set_text('{" RuleServiceId":"我们的规则服务ID","词汇":[{" ProfitCenterCompanyCode":{" BUKRS":" testCC"," PRCTR":" ourPR"}}}}'') 。 "设置请求方法并执行请求 DATA(lo_web_http_response)= lo_web_http_client->执行(if_web_http_client => post)。 DATA(lv_response)= lo_web_http_response-> get_text()。 捕获cx_http_dest_provider_error cx_web_http_client_error cx_web_message_error。 "错误处理 ENDTRY。 "取消注释以下行以进行控制台输出;先决条件:代码段是if_oo_adt_classrun〜main的实现 out-> write(| response:{lv_response} |)。 终结法。
莎拉,你好
我使用下面的代码来调用已从ABAP部署在云平台上的规则服务。 你能试一下吗? 您将不得不替换代码中指示的某些部分。
非常感谢Varun!
您好,莎拉,
您可以从这些博客中获取提示(blog1 ,blog2 ),然后将其应用于规则服务:
一周热门 更多>