WSO2企业集成商,向后端请求添加头

时间:2017-07-30 03:36:21

标签: wso2 wso2esb

我刚刚开始关注WSO2企业集成商。 当我试图创建一个调用需要身份验证的后端服务的API时,我目前陷入困境。

我目前很难尝试添加一个简单的标头,因为它需要身份验证才能访问后端。

我正在使用他们的eclipse工具,我的XML目前看起来像这样。

<?xml version="1.0" encoding="UTF-8"?>
    <api context="/one" name="singleRestApi" xmlns="http://ws.apache.org/ns/synapse">
    <resource methods="GET">
        <inSequence>
        <header name="Authorization" scope="transport" value="Basic ZWNYGWRtaH42Q2xvdGRBZG1pbjmeMw=="/>
        <send>
            <endpoint key="repos"/>
        </send>
        </inSequence>
        <outSequence>
            <send/>
        </outSequence>
        <faultSequence/>
    </resource>
</api>

目前正在使用集成教程:here

非常感谢任何帮助或指示。

1 个答案:

答案 0 :(得分:0)

您应该尝试将授权放在属性而不是标题中(如果您想进行简单的基本身份验证)

&#13;
&#13;
<?xml version="1.0" encoding="UTF-8"?>
    <api context="/one" name="singleRestApi" xmlns="http://ws.apache.org/ns/synapse">
    <resource methods="GET">
        <inSequence>
        <property action="remove" name="REST_URL_POSTFIX" scope="axis2"/>
        <property name="Authorization" scope="transport" value="Basic ZWNYGWRtaH42Q2xvdGRBZG1pbjmeMw=="/>
        <send>
            <endpoint key="repos"/>
        </send>
        </inSequence>
        <outSequence>
            <send/>
        </outSequence>
        <faultSequence/>
    </resource>
</api>
&#13;
&#13;
&#13;

<property action="remove" name="REST_URL_POSTFIX" scope="axis2"/> 部分是在发送到后端端点时删除api上下文(在/ one之后),如果你需要保留它,你可以删除这一行