发送内容类型 application/x-www-form-urlencoded WSO2 ESB

2023-12-13

我一直在一个服务链中工作,该服务链通过 WSO2 EMM 中使用的不记名令牌来回答我。 我在 ESB 中创建了一个代理,然后传递给一个新的序列来进行下一次调用,但是这个序列接收到一个 Content-Type application/x-www-form-urlencoded。我一直在寻求一些帮助,以便我能找到任何有趣的东西。

这是我的代理

<?xml version="1.0" encoding="UTF-8"?>
<proxy name="TokenService" startOnLoad="true" statistics="enable"
  trace="enable" transports="http https" xmlns="http://ws.apache.org/ns/synapse">
  <target>
    <inSequence>
      <!--Aggregate incoming responses -->
      <log level="full">
        <property name="sequence" value="Paso 1 - request for client register"/>
      </log>
      <property description="Content-Type" name="ContentType"
        scope="default" type="STRING" value="application/json"/>
      <header name="Accept" scope="transport" value="application/json"/>
      <payloadFactory description="Payload" media-type="json">
        <format>{
                    "owner": "admin",
                    "clientName": "admin_emm",
                    "grantType":
                    "refresh_token password client_credentials",
                    "tokenScope": "prod"
                    }</format>
        <args/>
      </payloadFactory>
      <send receive="Mensaje"/>
    </inSequence>
    <outSequence/>
    <faultSequence/>
  </target>
</proxy>

这是我从代理中的其他服务获取响应的序列

<?xml version="1.0" encoding="UTF-8"?>
<sequence name="Mensaje" trace="enable" xmlns="http://ws.apache.org/ns/synapse">
    <log level="custom">
        <property expression="json-eval($.client_secret)"
            name="client_secret" xmlns:ns="http://org.apache.synapse/xsd"/>
    </log>
    <log level="custom">
        <property expression="json-eval($.client_id)" name="client_id" xmlns:ns="http://org.apache.synapse/xsd"/>
    </log>
    <log level="custom">
        <property
            expression="fn:concat('Basic ', base64Encode('client_id:client_secret'))"
            name="Authorization" xmlns:ns="http://org.apache.synapse/xsd"/>
    </log>
    <property name="grant_type" value="password"/>
    <property name="username" value="admin"/>
    <property name="password" value="admin"/>
    <property name="scope" value="default"/>
    <header name="Accept" scope="transport" value="application/json"/>
    <payloadFactory media-type="xml">
        <format>
            <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
                <soapenv:Body>
                    <root xmlns="">
                        <grant_type>$1</grant_type>
                        <username>$2</username>
                        <password>$3</password>
                        <scope>$4</scope>
                    </root>
                </soapenv:Body>
            </soapenv:Envelope>
        </format>
        <args>
            <arg evaluator="xml" expression="$ctx:grant_type" xmlns:ns="http://org.apache.synapse/xsd"/>
            <arg evaluator="xml" expression="$ctx:username" xmlns:ns="http://org.apache.synapse/xsd"/>
            <arg evaluator="xml" expression="$ctx:password" xmlns:ns="http://org.apache.synapse/xsd"/>
            <arg evaluator="xml" expression="$ctx:scope" xmlns:ns="http://org.apache.synapse/xsd"/>
        </args>
    </payloadFactory>
    <property name="ContentType" value="application/x-www-form-urlencoded"/>
    <property name="DISABLE_CHUNKING" scope="axis2" type="STRING" value="true"/>
    <call>
        <endpoint name="Token">
            <http method="POST" uri-template="https://localhost:9443/oauth2/token"/>
        </endpoint>
    </call>
    <respond/>
</sequence>

然后,当我运行它时,出现 HTTP/1.1 415 Unsupported Media Type 错误

请帮忙


Answer recommended by WSO2 Collective

我明白了,这就是答案

<?xml version="1.0" encoding="UTF-8"?>
<sequence name="Mensaje" trace="enable" xmlns="http://ws.apache.org/ns/synapse">
    <property expression="json-eval($.client_secret)"
        name="client_secret" xmlns:ns="http://org.apache.synapse/xsd"/>
    <property expression="json-eval($.client_id)" name="client_id" xmlns:ns="http://org.apache.synapse/xsd"/>
    <property
        expression="fn:concat(get-property('client_id'),':',get-property('client_secret'))"
        name="Concatenados" xmlns:ns="http://org.apache.synapse/xsd"/>
    <property expression="base64Encode(get-property('Concatenados'))"
        name="Codificados" xmlns:ns="http://org.apache.synapse/xsd"/>
    <property
        expression="fn:concat('Basic ', get-property('Codificados'))"
        name="Autorizacion" xmlns:ns="http://org.apache.synapse/xsd"/>
    <property name="grant_type" value="password"/>
    <property name="username" value="admin"/>
    <property name="password" value="admin"/>
    <property name="scope" value="default"/>
    <payloadFactory media-type="xml">
        <format>
            <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
                <soapenv:Body>
                    <root xmlns="">
                        <grant_type>$1</grant_type>
                        <username>$2</username>
                        <password>$3</password>
                        <scope>$4</scope>
                    </root>
                </soapenv:Body>
            </soapenv:Envelope>
        </format>
        <args>
            <arg evaluator="xml" expression="$ctx:grant_type" xmlns:ns="http://org.apache.synapse/xsd"/>
            <arg evaluator="xml" expression="$ctx:username" xmlns:ns="http://org.apache.synapse/xsd"/>
            <arg evaluator="xml" expression="$ctx:password" xmlns:ns="http://org.apache.synapse/xsd"/>
            <arg evaluator="xml" expression="$ctx:scope" xmlns:ns="http://org.apache.synapse/xsd"/>
        </args>
    </payloadFactory>
    <header name="Content-Type" scope="transport" value="application/x-www-form-urlencoded"/>
    <header expression="get-property('Autorizacion')"
        name="Authorization" scope="transport" xmlns:ns="http://org.apache.synapse/xsd"/>
    <property name="messageType" scope="axis2" type="STRING" value="application/x-www-form-urlencoded"/>
    <property name="DISABLE_CHUNKING" scope="axis2" type="STRING" value="true"/>
    <call>
        <endpoint name="Token">
            <http method="POST" uri-template="https://localhost:9443/oauth2/token"/>
        </endpoint>
    </call>
    <respond/>
</sequence>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

发送内容类型 application/x-www-form-urlencoded WSO2 ESB 的相关文章

  • WSO2 ESB DBLookup 中介查询多行

    正如 DBLookup Mediator 的文档中所述 它仅返回查询的第一行 其他结果 如果有 将被忽略 我想知道是否有 最佳方法 来运行返回多个记录然后处理它们的查询 SELECT FROM X 现在我们正在实现 axis2 服务 但是还
  • WSO2 ESB日志太大,如何设置?

    I do a performance test on WSO2 ESB And I found the log is too big that can not open The biggest file is 7 20GB I think
  • 使用 wso2 进行 XML 到 XML 转换

    我正在使用 wso2 esb 4 8 1 我正在尝试在 smooks 中介器的帮助下进行 xml 到 xml 的转换 但是当从 wso2 的应用程序部署控制台尝试它时 我收到以下异常 2014 11 07 09 39 20 401 ERRO
  • wso2 中的 xml 到 json 转换

    当我尝试使用 wso2 中的 XSLT 中介器将 XML 转换为 Json 时 我收到 有效负载无法写为 JSON 错误 谁能帮我解决这个问题 提前致谢 Answer recommended by WSO2 Collective 为什么不使
  • getPayloadJSON 返回一个空对象

    我正在做一些非常简单的脚本中介作为测试 看看是否可以更改服务器返回的有效负载 我的无中介有效负载如下 origin 202 37 75 130 然后我尝试做一个非常简单的检查 看看 get 和 set 是否适用于有效负载 我的结果是 jso
  • wso2 Esb 中代理服务和 API 服务的区别

    wso2esb 中的代理服务和 API 服务有什么区别 为了公开我的服务 我可以提供代理 URL 和 API URL 那么在哪种情况下两者会有所不同 在什么情况下可以使用代理 在什么情况下可以使用API 请帮助我理解 API 具有资源 因此
  • WSO2 ESB 覆盖 ContentType 属性

    我正在开发 WSO2 ESB 代理服务 该服务涉及通过 ESB 上的 SOAP 端点公开内部 RESTful 服务 我的 RESTful 服务需要 Content type application rdf xml 我尝试使用文档中提到的所有
  • 如何在 wso2 中迭代 JSON 负载并构建响应

    如何通过将 carValue 和 bikeValue 添加到响应数组的 id C 05 B 08 C 07 B 06 中来迭代结果数组并构造响应数组 并保持与描述相同的 desc JSON 负载请求 results desc Blind c
  • WSO2签名系统服务应用程序

    我想将我的所有设备设置为 COPE WSO2 EMM 设置已完成并且工作正常 剩下的就是使用固件密钥对系统服务应用程序进行签名 我仅使用 Google 设备 Android 设备 摩托罗拉 G2 从那里我可以找到用于签署应用程序的密钥和密码
  • WSO2 MDM iPhone 配置文件安装问题(无效的 DER 编码,未结束)

    我正在为 iPhone MDM 使用 WSO2 3 2 0 IOT 服务器 并按照网站中的说明安装它 我生成了 MDM APNS 证书 并将其添加到服务器上的 ios 配置中 在为 MDM 注册 iPhone iphone 6 时 我在 i
  • ActiveMQ:一条待处理消息,但队列为空

    我在使用 ActiveMQ 时遇到了一个奇怪的问题 我有一个队列 似乎有待处理的消息 但是当我打开队列时 没有消息 这里有什么问题吗 真的有消息待处理吗 我怎样才能取回消息或至少看到内容 Screenshot of the pending
  • WSO2 EMM:从设备管理中删除设备

    我成功将 Android 设备注册到 EMM 然后我恢复出厂设置并重新注册 现在 同一设备在我的设备管理中列出了两次 第一件事 这种行为是想要的吗 我认为应该有一个规则来检查 IMEI 并用新注册的对象替换旧对象 第二件事 如何摆脱旧对象
  • 在 WSO2 ESB 中介期间修改配置注册表资源内容

    我有一个场景 我需要在配置注册表中存储简单计数器并在序列流结束时递增它 我们需要存储在配置注册表中的原因是 如果服务器重新启动 我们将保留最后的计数器值 有人可以建议如何增加配置注册表中的计数器吗 您可以在中介中使用示例 javascrip
  • 将注册表项加载到 wso2 属性中介器中

    我当前正在使用以下语句从 wso2 esb 中的本地条目加载数据
  • WSO2 ESB 4.8 中的 RabbitMQ AMQP 传输支持

    http docs wso2 org display ESB480 RabbitMQ AMQP Transport http docs wso2 org display ESB480 RabbitMQ AMQP Transport我已经完成
  • 如何解密从 Soap UI 5.0.0 中的 WSO2 安全代理服务接收的消息

    我正在尝试调用 WSO2 ESB 中的安全代理服务 我跟着这个tutorial http tryitnw blogspot com 2013 07 invoking secured esb proxy service html 我已成功调用
  • 消息处理器中定义的序列未收到响应

    我有一个单独的代理 在WSO2ESB4 8 1 将消息发送到消息存储 配置为WSO2MB 2 2 0 然后处理器将消息发送到后端 后端接收消息 但后端的响应不会返回到定义的序列 Seq IfcFileCheckinResponse在处理器中
  • WSO2 ESB 中的跟踪日志文件

    在 WSO2 ESB 中 它到底显示 wso2 esb trace log 文件什么 什么时候有用 并且 与 WSO2 ESB 中的其他典型日志文件有何不同 例如 使用 wso2 esb service log 或 wso2 esb err
  • WSO2 ESB 4.0.3 - 从 4.0.* 存储库安装数据服务功能时出错

    我下载了 WSO2 ESB 4 0 3 并将其解压到我的 MAC OSX 10 7 5 的 MAC book PRO 上 我通过管理 UI 添加了以下存储库 http dist wso2 org p2 carbon releases 4 0
  • 如何使用和理解wso2 git仓库?

    我刚刚开始对wso2感兴趣 我正在寻找移动设备管理解决方案 所以我测试了 wso2 EMM 但我发现了一些限制 我想知道是否可以自己实现 我的问题是我完全迷失在 wso2 git 存储库中 有没有我错过的指导书或逻辑 如果有人帮助我解决这个

随机推荐

  • 在 m1 上安装带 ssl 的 gem eventmachine 1.2.7

    我发布此内容是为了防止其他人遇到同样的问题 我试图从苹果 m1 笔记本电脑部署我的 ruby 项目 并且得到了libc abi terminating with uncaught exception of type std runtime
  • 为什么允许结构体将“指向其自身类型的指针”作为成员,但不允许“结构体类型(的数组)”本身?

    当我尝试声明以下函数时 typedef struct TRIE NODE char word struct TRIE NODE node 26 TRIE NODE 我收到以下错误 struct TRIE NODE 的定义直到结束 才完成 但
  • C# 中的随机数

    当我尝试运行该应用程序时 出现以下错误 我确信它很简单 但我没有看到它 当我单击标记为 播放 的按钮时 我想要做什么 我想调用一个名为 randomnumber 的方法 然后我希望结果显示在lblPickFive 1中 我有 2x2 Pic
  • Android 换行符和 git

    我即将将一个 android 项目放入 git 存储库中 但我对行结尾有点不确定 我的这个项目目前运行在 Windows 上 因此 autocrlf 设置为 true 但是当我进行初始提交时 我收到以下警告 警告 project file
  • driver.get 之后 Selenium 代码不执行

    我正在尝试自动化一个网站 我使用 driver get 来访问该页面并执行了一些操作 接下来 我必须导航到该网站中的某个页面并使用 driver get 来访问该页面 在执行脚本直到该部分之前 发布它只是停止并且不会执行打印语句 最后我得到
  • g++ 4.1.2 与 g++ 4.6 混合

    所以 事情是这样的 要在 Linux 上开发 Maya 插件 我们必须使用 GCC 4 1 2 进行编译 但该编译器不支持任何新的 C 0x 功能 是否可以做这样的事情 gcc 4 6 o test cpp o c test cpp gcc
  • 如何实现角度材质表(mat-table)中的编辑、更新和丢弃功能

    我想在角度材料表中实现编辑 更新和丢弃功能 我知道如何按行编辑和更新表 但不知道如何丢弃表行 请点击链接Stackblitz 链接到表看看我做了什么 如果您知道如何实现丢弃功能 请帮助我 任何帮助将不胜感激 我不知道如何保留数据单元格的初始
  • 如何从/etc/passwd添加、删除编辑用户名[重复]

    这个问题在这里已经有答案了 我想添加 删除或编辑用户名 etc passwd在 C 程序中 有没有标准的 Linux 函数可以实现这样的功能 有adduser and deluser Use man deluser了解详情 编辑 我错过了问
  • 如何使用 pybind11 将 python 函数设置为 c++ 的回调?

    typedef bool ftype callback ClientInterface client const Member member int member num struct Member char x 64 int y clas
  • 当html没有空格时如何平均分配li元素?

    我读了这篇文章几乎完整的 Flexbox 指南 没有 Flexbox 并且我尝试使用 空格之间 我有这样的代码 ul margin 0 padding 0 text align justify ul after content displa
  • 我的 xib 中的 UIButtons 发生了什么?

    我有一组 UIButton 在 xib 中定义 其标签需要定期更新 在这些按钮的超级视图的视图控制器的 ViewDidLoad 方法中 我有一个针对每个按钮的更新方法 button titleLabel text Relevant Text
  • 如何使用Java从目录中删除文件?

    谁能告诉我如何在打开并加载到数据库后删除目录中的文件 这是我的代码 public static void main String args throws SQLException int Count 0 File directory new
  • Objective C 如何为整个应用程序上的所有 UI 按钮设置独占触摸

    我的应用程序在整个应用程序中有很多按钮 我想一次性将它们全部设置在一起 或应用程序中的所有视图 我们可以单独设置 button setExclusiveTouch YES 但我想一次设置应用程序中的所有按钮 我们可以设置所有视图独占触摸吗
  • OData路由异常

    我对此很陌生 所以我将从代码开始 然后我将进行解释 问题是这样的 HttpGet ODataRoute key public SingleResult
  • 当类实例的属性之一失效时自动删除类实例

    Set Up 说我有一个Snit class Snit pass And a Snot 其中包含最多四个的弱引用Snits import weakref class Snot def init self s1 None s2 None s3
  • 列出 git 中提交所触及的所有文件

    如何列出两次提交之间 触及 的所有文件 我正在寻找类似的命令git diff COMMIT1 COMMIT2 name only但包括后来修改和恢复的文件 例如 假设我有一个包含一系列提交 线性历史记录 的存储库 C0git diff根本不
  • 关于如何在 Scala 中使用随机值向现有 DataFrame 添加新列

    我有一个带有镶木地板文件的数据框 我必须添加一个包含一些随机数据的新列 但我需要彼此不同的随机数据 这是我的实际代码 spark的当前版本是1 5 1 cdh 5 5 2 val mydf sqlContext read parquet s
  • 如何将 2D Excel 表格“展平”或“折叠”为 1D?

    我有一个 Excel 中包含国家和年份的二维表 例如 1961 1962 1963 1964 USA a x g y France u e h a Germany o x n p 我想 展平 它 这样我在第一列中包含国家 地区 在第二列中包
  • Java中如何进行多行输入

    我正在尝试在 Java 中获取多行用户输入并将这些行分成一个array 我需要这个来解决在线法官的问题 我正在使用一个Scanner接受输入 我无法确定输入的结尾 我总是遇到无限循环 因为我不知道输入的大小 即行数 用空字符串终止输入 单击
  • 发送内容类型 application/x-www-form-urlencoded WSO2 ESB

    我一直在一个服务链中工作 该服务链通过 WSO2 EMM 中使用的不记名令牌来回答我 我在 ESB 中创建了一个代理 然后传递给一个新的序列来进行下一次调用 但是这个序列接收到一个 Content Type application x ww