Dropbox OAuth使用https回调到Mule

Dropbox OAuth使用https回调到Mule,oauth,mule,dropbox-api,Oauth,Mule,Dropbox Api,Dropbox要求回调URL通过HTTPS(不使用localhost时) 将Mule 3.6.0与最新的dropbox连接器一起使用时,回调默认为http,因此只与localhost一起工作。对于制作,我需要在OAuth舞蹈中使用https 指定https回调URL的正确方法是什么 我试过: <https:connector name="connector.http.mule.default"> <https:tls-key-store path="${ssl.ce

Dropbox要求回调URL通过HTTPS(不使用localhost时)

将Mule 3.6.0与最新的dropbox连接器一起使用时,回调默认为http,因此只与localhost一起工作。对于制作,我需要在OAuth舞蹈中使用https

指定https回调URL的正确方法是什么

我试过:

  <https:connector name="connector.http.mule.default">
    <https:tls-key-store path="${ssl.certfile}" keyPassword="${ssl.keyPass}" storePassword="${ssl.storePass}"/>
  </https:connector>

  <dropbox:config name="Dropbox" appKey="${dropbox.appKey}" appSecret="${dropbox.appSecret}" doc:name="Dropbox">
    <dropbox:oauth-callback-config domain="production.mydomain.com"  path="callback" />
  </dropbox:config>

以下是我最终解决问题的方法:

<https:connector name="connector.http.mule.default"  doc:name="HTTP-HTTPS">
  <https:tls-key-store path="${ssl.certfile}" keyPassword="${ssl.keyPass}" storePassword="${ssl.storePass}"/>
</https:connector>

<dropbox:config name="Dropbox" appKey="${dropbox.appKey}" appSecret="${dropbox.appSecret}" doc:name="Dropbox">
  <dropbox:oauth-callback-config domain="myserver.domain.com"  path="callback" connector-ref="connector.http.mule.default" localPort="8052" remotePort="8052"/>
</dropbox:config>
日志条目:

INFO  ... Attempting to register service with name: Mule.Ops:type=Endpoint,service="DynamicFlow-https://localhost:8052/callback",connector=connector.http.mule.default,name="endpoint.https.localhost.8052.callback"
INFO  ... Registered Endpoint Service with name: Mule.Ops:type=Endpoint,service="DynamicFlow-https://localhost:8052/callback",connector=connector.http.mule.default,name="endpoint.https.localhost.8052.callback"
INFO  ... Registered Connector Service with name Mule.Ops:type=Connector,name="connector.http.mule.default.1"
解决方法是强制Mule对将localhost定义为端点的连接器侦听0.0.0.0

在wrapper.conf集合中

wrapper.java.additional.x=-Dmule.tcp.bindlocalhosttoalllocalinterfaces=TRUE
INFO  ... Attempting to register service with name: Mule.Ops:type=Endpoint,service="DynamicFlow-https://localhost:8052/callback",connector=connector.http.mule.default,name="endpoint.https.localhost.8052.callback"
INFO  ... Registered Endpoint Service with name: Mule.Ops:type=Endpoint,service="DynamicFlow-https://localhost:8052/callback",connector=connector.http.mule.default,name="endpoint.https.localhost.8052.callback"
INFO  ... Registered Connector Service with name Mule.Ops:type=Connector,name="connector.http.mule.default.1"
wrapper.java.additional.x=-Dmule.tcp.bindlocalhosttoalllocalinterfaces=TRUE