2017-01-12 2 views
0

Я хочу передать учетные данные авторизации OAuth2.0 из моего потока службы Mule, чтобы интегрировать его с FitBit API.OAuth2.0 Учетные данные службы Mule

Когда я пытаюсь использовать API-интерфейс FitBit из PostMan, есть предложение «Получить новый токен доступа», который просит пользователя передать 1) URL-адрес URL-адреса 2) URL-адрес для доступа 3) Идентификатор клиента 4) Клиентский секрет (FYI - все эти учетные данные будут созданы FitBit).

Моя проблема здесь, я не уверен, как эти полномочия будут переданы от Мула?

Может кто-нибудь, пожалуйста, помогите мне указать какой-нибудь указатель, пожалуйста?

ответ

0

Я думаю, что ваша ситуация такая же, как the Github API example в документах MuleSoft.

Настройка клиента приложение Mule для доступа к API FitBit как пример показывает, для доступа к GitHub API:

<http:listener-config name="HTTP_Listener_Configuration" host="0.0.0.0" port="8081" doc:name="HTTP Listener Configuration" basePath="/github"/> 
<http:request-config name="HTTP_Request_Configuration" protocol="HTTPS" host="api.github.com" port="443" doc:name="HTTP Request Configuration"> 
    <oauth2:authorization-code-grant-type clientId="27...df" clientSecret="ae...6" redirectionUrl="http://localhost:8082/callback"> 
     <oauth2:authorization-request authorizationUrl="https://github.com/login/oauth/authorize" localAuthorizationUrl="http://localhost:8082/login" /> 
     <oauth2:token-request tokenUrl="https://github.com/login/oauth/access_token"> 
      <oauth2:token-response accessToken="#[payload.'access_token']" refreshToken="#[payload.'access_token']"/> 
     </oauth2:token-request> 
    </oauth2:authorization-code-grant-type> 
</http:request-config> 
<flow name="oauth-grant-codeFlow"> 
    <http:listener config-ref="HTTP_Listener_Configuration" path="/" doc:name="HTTP"/> 
    <http:request config-ref="HTTP_Request_Configuration" path="/user" method="GET" doc:name="HTTP"> 
     <http:request-builder> 
      <http:header headerName="Accept" value="application/vnd.github.v3+json"/> 
     </http:request-builder> 
    </http:request> 
    <dw:transform-message doc:name="Transform Message"> 
     <dw:set-payload><![CDATA[%dw 1.0 %output application/json 
      --- 
      payload]]> 
     </dw:set-payload> 
    </dw:transform-message> 
</flow> 
+0

Спасибо за предложение помощи! Позвольте мне попробовать предложенный сценарий. Вернется обратно в случае каких-либо запросов. – Maddy

+0

Я пробовал следовать инструкциям, указанным на Mule soft, которые вы предоставили, но когда я пытаюсь развернуть мое приложение, оно дает мне некоторую ошибку TLS, | | | java.lang.IllegalStateException: Невозможно создать приемник для HTTP без контекста TLS при условии \t в org.mule.module.http.api.listener.HttpListenerBuilder.resolveListenerConfig (HttpListenerBuilder.java:268) \t в org.mule. module.http.api.listener.HttpListenerBuilder.build (HttpListenerBuilder.java:195) Не могли бы вы предоставить некоторый указатель? Заранее спасибо!! – Maddy

+0

Я вижу некоторые требования к браузеру, такие как информация сертификата TLS, указанная на сайте Fitbit https://dev.fitbit.com/docs/oauth2/. Какой браузер вы используете? Вы следовали за шагами Fitbit для потока грантов авторизационного кода? – catpaws

0

Я также получал ту же ошибку при попытке установить соединение с ошибкой ChannelAdvisor API.This приходит только когда вы пытаетесь использовать HTTPS. Решение этой проблемы - настроить параметры TLS/SSL. Установите для него новый сертификат.

Спасибо, -dev