2013-12-11 2 views
0

WSO2 esb 4.8.0을 사용 중이며 PayPal API OAuth 요청 (request with title OAuth Request/Response)으로 REST 호출을하려고합니다. 요청의 콘텐츠 유형은 application/x-www-form-urlencoded이어야합니다. 나는 이것을 여러 가지 방법으로 시도했다. <payloadFactory media-type="json"> <format> { "grant_type":"client_credentials" } </format>
</payloadFactory>
<property name="messageType" value="application/x-www-form-urlencoded" scope="axis2"/>
<call> <endpoint> <http method="post" uri-template="https://api.sandbox.paypal.com/v1/oauth2/token?grant_type=client_credentials"/> <property name="grant_type" value="client_credentials"/> </endpoint> </call>
페이로드 내에 application/x-www-form-urlencoded 인코딩으로 양식 데이터 보내기

  1. (for better code view please refer this)

    은, 나는 한 번 코드에서 3 수 (가능한 것) 방법을 포함 (뿐만 아니라 시도)이 호출을해야한다. 그러나 게시 매개 변수가 끝점으로 올바르게 전달되지 않습니다. 나는 HTTP/1.1 400 코드로 다음과 같은 반응을 얻고있다.

    {"error":"invalid_request","error_description":"grant_type is a required parameter"} 
    

    누구든지이 문제를 해결할 수 있다면 감사하게 생각합니다.

답변

0

oAuth 토큰을 얻으려면 paypal과 같은 시나리오를 시도했습니다. 다음 구성을 참조하십시오.

<property name="DISABLE_CHUNKING" value="true" scope="axis2" type="STRING"/> 
<property name="HTTP_METHOD" value="POST" scope="axis2" type="STRING"/> 
<payloadFactory media-type="xml"> 
    <format> 
     <POST xmlns=""> 
      <grant_type>client_credentials</grant_type> 
     </POST> 
    </format> 
    <args/> 
</payloadFactory> 
<property name="messageType" value="application/x-www-form-urlencoded" scope="axis2" type="STRING"/> 
<send> 
    <endpoint> 
     <address uri="https://api.sandbox.paypal.com/v1/oauth2/token"/> 
    </endpoint> 
</send>