1

我不是 PEGA 开发人员。但这个问题适用于任何 PEGA 开发人员/管理员。这是我最近在尝试将我的应用程序(使用 REST 服务)与 PEGA 7 集成时注意到的一个问题。

我从我的应用程序创建了一个 REST 服务,并使用 OAuth 2.0 身份验证托管它。PEGA 应用程序必须使用我的服务。

为了测试从 PEGA 到我的应用程序的连接性,我自己创建了一个 OAuth 令牌并与 PEGA 开发人员共享相同的令牌,要求他们通过跳过授权调用直接调用我的服务。

使用任何 REST 测试工具,例如 Chrome 的 REST 控制台、APIgee 等,我只需将 http-header 参数作为 [param name: Authorization & param value: OAuth] 传递即可测试我的 REST 服务。

但是 PEGA 在直接提供 http-header 参数以从 PEGA PRPC 应用程序测试我的服务时遇到问题。

我对 PEGA 开发人员/管理员的问题是,

  • PEGA很难在http调用中添加标头参数吗
  • 应要求,当开发人员尝试从 PEGA 测试我的服务时,与我共享了 PEGA 屏幕。在此期间,我注意到 PEGA 没有任何跟踪日志来捕获生成的确切 http 请求。我们真的看不到从 REST 连接器工具生成的 http 请求(标头/正文)吗?
4

2 回答 2

0

You could use the Tool Fiddler to see what exactly goes out of Pega to invoke your service.

For OAuth Authentication , make sure the Pega Authentication Profile is set to OAuth and the token is extracted properly.

Fiddler will help you see whats going on.

于 2014-10-01T16:10:04.313 回答
0

添加头参数比较简单。要从 PEGA 中的 REST API 获取信息,您需要定义一个 Connect-REST 规则。可悲的是,我没有足够的声誉在我的答案中发布图片,但我将标题区域的照片上传到 imgur,您可以在此处查看http://imgur.com/vWBm6dD。确保告诉您的 PEGA 开发人员选择“Constant”作为 Map From,并将令牌放在“Map From Key”字段中的引号中,就像我在图像中所做的那样。

不幸的是,不可能记录完整的传出数据包。如果您将活动 Rule-Connect-REST.pyInvokeRESTConnector 的日志记录级别设置为 DEBUG,它会在连接过程中记录更多信息,包括完整的传出 URL,但不包括标头。对于您的 PEGA 开发人员,要更改此活动的日志记录级别,请转到主菜单(单击 DesignerStudio)-> 系统 -> 工具 -> 日志 -> 日志记录级别设置。将记录器名称设置为“Rule_Obj_Activity.pyInvokeRESTConnector.Rule_Connect_REST.Action”,并将级别设置为 DEBUG。

如果这还不足以解决问题,您的 PEGA 开发人员可以选择添加自己的日志记录。PEGA 中的连接器规则被调用而不是组装,创建数据包并调用远程服务的代码在该活动的步骤 5 中,即 pyInvokeRESTConnector。该活动可以像任何其他活动一样是私人签出的,因此您可以添加自己的自定义日志记录,以确保在那里正确设置所有内容。但是,我强烈建议他们不要在应用程序规则集中覆盖该活动。私人签出是临时的,所以它们很好,但覆盖是永久的,如果他们决定升级到另一个版本的 PRPC,也会覆盖所有未来的更新。

于 2014-06-30T15:35:38.487 回答