2014-06-29 26 views
1

我不是PEGA开发人员。但是这个问题是针对任何PEGA开发者/管理员的。这是关于我注意到最近在尝试我的应用程序集成(使用REST服务)的问题与PEGA 7使用HTTP头部参数从PEGA 7消费REST服务

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

要测试从PEGA连通到我的申请,我会创造一个OAuth令牌自己和共享同样与PEGA开发商要求他们直接跳过授权来电叫我的服务。

使用任何REST测试工具(例如Chrome的REST控制台,APIgee等),我只能通过将http标头参数作为[参数名称:授权& param value:OAuth]来测试我的REST服务。

但PEGA直接提供的HTTP头参数从PEGA PRPC应用程序测试我的服务有一个问题。

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

  • 是很难从PEGA添加页眉PARAM在HTTP调用
  • 根据要求,PEGA屏幕与我共享,而开发商试图测试我的服务来自PEGA。在此期间,我注意到PEGA没有任何跟踪日志到 捕获生成的确切http请求。是否真的看不到从REST连接器工具生成的http请求(标题/正文)?

回答

0

添加报头参数是相对简单的。要从PEGA中的REST API获取信息,请定义Connect-REST规则。可悲的是,我没有足够的声望在我的回答中张贴图像,但是我上传了标题区域的照片给imgur,你可以在这里看到http://imgur.com/vWBm6dD。确保你告诉你的PEGA开发者选择“Constant”作为Map From,并将该标记放在“Map From Key”字段中,就像我在图片中所做的一样。

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

如果这还不足以解决您的PEGA开发商确实有自己的日志中添加的选项问题。调用PEGA中的连接器规则而不是汇编,创建数据包并调用远程服务的代码位于该活动的第5步pyInvokeRESTConnector中。该活动可以像任何其他私人签出一样,所以你可以添加自己的自定义日志记录,以确保一切正确设置在那里。不过,我强烈建议他们不要在应用程序规则集中重写该活动。私人结账是暂时的,所以它们都可以,但是覆盖是永久性的,并且如果他们决定升级到另一版本的PRPC,也将覆盖所有未来的更新。

+0

嗨迈克,感谢您的意见。我相信我的PEGA开发人员按照您的说明添加了标题参数,但PEGA从我的应用程序收到“401 - 未经授权”响应。这意味着,他们能够打我的服务器,但不能进行身份验证。这就是为什么我想知道他们的请求数据包是如何被构建的。让我分享一下我的PEGA开发者。 – AMP

+0

对不起,我无法提供更多帮助,这实际上是我在PEGA内的技巧。我不确定您对系统有多少控制,但您可以让PEGA开发人员暂时将端点更改为您可以控制的某个位置,以便您可以检查传入数据包的内容。 – mdegat01

0

您可以使用工具小提琴手,看看究竟是什么出去PEGA来调用服务。

对于OAuth身份验证,请确保Pega身份验证配置文件设置为OAuth并正确提取令牌。

提琴手将帮助你看看发生了什么。