Mule 缺少任意点平台应用程序名称(flowVars.\u客户端名称)

Mule 缺少任意点平台应用程序名称(flowVars.\u客户端名称),mule,anypoint-studio,mulesoft,anypoint-platform,Mule,Anypoint Studio,Mulesoft,Anypoint Platform,今天我面临一个奇怪的问题,当从AnypointStudio本地运行我的MuleSoft应用程序并从postman发出请求时,我得到了403个错误。调试时,我发现应用程序正在检查flowVars.\u clientName,但是它丢失了。根据此文档,实际上是flowVars.\u clientName是预期的 因此,我的应用程序失败,出现403错误。似乎其他环境工作得非常好 是的,它正在使用客户端Id强制执行 有什么线索吗?没有更多细节,问题似乎在应用程序的逻辑中。您引用的知识库文章是一篇如何在

今天我面临一个奇怪的问题,当从AnypointStudio本地运行我的MuleSoft应用程序并从postman发出请求时,我得到了403个错误。调试时,我发现应用程序正在检查flowVars.\u clientName,但是它丢失了。根据此文档,实际上是flowVars.\u clientName是预期的

因此,我的应用程序失败,出现403错误。似乎其他环境工作得非常好

是的,它正在使用客户端Id强制执行


有什么线索吗?

没有更多细节,问题似乎在应用程序的逻辑中。您引用的知识库文章是一篇如何在需要获取客户机名称时使用的文章。它并没有说您必须使用身份验证。您没有描述应用程序如何进行身份验证/授权。它是流动的吗?还是在政策中?如果它是标准的客户端ID强制策略,则可以配置用于计算客户端ID和密码的表达式,但我认为默认值不是
#[flowVars.\u clientName]
#[flowVars.\u clientId]


请注意,Exchange基本上是API和其他工件的存储库。它在执行时不验证任何内容。除非您的应用程序试图以某种方式使用它,但我想不出这样做的原因。

只有重新下载Anypoint Studio和mule runtime才能解决此问题。非常奇怪,它只发生在一个应用程序中,而不是其他应用程序。创建新的工作区没有帮助,删除应用程序、重新克隆和安装没有帮助,甚至在新目录中重新控制也没有帮助。仅使用新的Anypoint Studio和运行时安装解决了此问题(即使使用了旧的代码库).

抱歉,我弄错了,实际上clientId很好,问题是applicationName没有返回。因此,我的变量缺少flowVars.\u clientName。是的,身份验证没有问题,但不会返回应用程序名称。我在顶部添加了一条注释,我将根据我在应用程序中看到的内容编辑我的问题,如果您有clientId强制策略,则客户端Id会返回一个名为#[flowVars._clientId]的变量并且应用程序名会在名为[flowVars.\u clientName]的变量中返回。