Oauth 2.0 WSO2 ESB-使用OAuth2服务
我打算调用OAuth令牌服务来检索令牌。 下面是我的代理。这是一个简单的rest端点调用,用于检索令牌。出于测试目的,我尝试将令牌记录在响应中Oauth 2.0 WSO2 ESB-使用OAuth2服务,oauth-2.0,wso2esb,Oauth 2.0,Wso2esb,我打算调用OAuth令牌服务来检索令牌。 下面是我的代理。这是一个简单的rest端点调用,用于检索令牌。出于测试目的,我尝试将令牌记录在响应中 <?xml version="1.0" encoding="UTF-8"?> <proxy name="sla_proxy_svc_vo2" startOnLoad="true" trace="disable" transports="http https" xmlns="http://ws.apache.org/ns/synapse"
<?xml version="1.0" encoding="UTF-8"?>
<proxy name="sla_proxy_svc_vo2" startOnLoad="true" trace="disable"
transports="http https" xmlns="http://ws.apache.org/ns/synapse">
<target>
<inSequence>
<log level="custom">
<property name="msg" value="*****INITIATING*****" />
</log>
<payloadFactory media-type="xml">
<format>
<soapenv:Envelope xmlns:echo="http://echo.services.core.carbon.wso2.org"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<nstxt:text xmlns:nstxt="http://ws.apache.org/commons/ns/payload">grant_type=client_credentials&client_id=G6Dk_3ZdrXOfPiuctufVq6GfTWoa&client_secret=jxA8NTkEClE5xGUvGvvhVTDyXM4a</nstxt:text>
</soapenv:Body>
</soapenv:Envelope>
</format>
<args />
</payloadFactory>
<log level="custom">
<property name="msg" value="*****BEFORE TOKEN SERVICE CALL*****" />
</log>
<log level="full" />
<property name="HTTP_METHOD" scope="axis2" type="STRING"
value="POST" />
<property name="messageType" scope="axis2" type="STRING"
value="text/plain" />
<property name="ContentType" scope="axis2" type="STRING"
value="text/plain" />
<property name="Accept" scope="axis2" type="STRING"
value="application/json" />
<send>
<endpoint>
<http format="rest" method="post" trace="disable"
uri-template="http://10.236.70.9:8281/token" />
</endpoint>
</send>
</inSequence>
<outSequence>
<log level="custom">
<property name="msg" value="******OUT SEQUENCE*******" />
</log>
<log level="full" />
<send />
</outSequence>
<faultSequence />
</target>
</proxy>
授予\类型=客户\凭证&;客户id=G6Dk\U 3ZdrXOfPiuctufVq6GfTWoa&;客户_secret=jxa8ntkecle5xguvgvvtdyxm4a
我打电话时得到以下回复
DEBUG {org.apache.synapse.transport.http.wire} - << "HTTP/1.1 415 Unsupported Media Type[\r][\n]" {org.apache.synapse.transport.http.wire}
DEBUG {org.apache.synapse.transport.http.wire} - << "X-Frame-Options: DENY[\r][\n]" {org.apache.synapse.transport.http.wire}
DEBUG {org.apache.synapse.transport.http.wire} - << "X-XSS-Protection: 1; mode=block[\r][\n]" {org.apache.synapse.transport.http
DEBUG{org.apache.synapse.transport.http.wire}-我能够使用以下负载调用该服务
<payloadFactory media-type="xml">
<format>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<root>
<grant_type>client_credentials</grant_type>
<client_id>G6Dk_3ZdrXOfPiuctufVq6GfTWoa</client_id>
<client_secret>jxA8NTkEClE5xGUvGvvhVTDyXM4a</client_secret>
</root>
</soapenv:Body>
</soapenv:Envelope>
</format>
<args />
</payloadFactory>
客户端凭据
G6Dk_3ZDRXOFPIUCTUFQ6GFTwoA
JXA8Ntkecle5xGuvGVvtdyxM4A
还必须添加以下内容类型
<property name="messageType" scope="axis2" type="STRING" value="application/x-www-form-urlencoded" />
<property name="ContentType" scope="axis2" type="STRING" value="application/x-www-form-urlencoded" />
这起作用并检索到了令牌。这是我在组件中使用的一个模板,用于设置oAuth令牌,您可能会根据您的情况对其进行一些调整(听起来您不需要grantType或用户凭据)
Hi@Yasothar你的问题解决了吗,其中一个答案对你有帮助吗?是的,尼古拉斯,这很有帮助。我找到了,你的回答也很有帮助。