2014-09-02 5 views
3

새 Office 365 파일 REST API를 호출하려고합니다. (설명한대로 here).Office 365 OneDrive REST API - "invalid_client"

저는 우편 발송자 휴식 클라이언트를 사용하여 요청을 보내고 있습니다.

저는 Azure AD에 내 응용 프로그램을 등록하고 'Office 365 SharePoint Online'에 대한 모든 권한을 부여 받았습니다.

Azure AD에서 생성 된 clientId를 사용하여 성공적으로 인증 토큰을 얻을 수 있습니다.

그러나 액세스 토큰을 사용하여 파일을 나열하려고하면 오류가 발생합니다.

------------------ 
RESOURCE HTTP GET: 
------------------ 
URL: https://<OUR_DOMAIN>-my.sharepoint.com/personal/<user_domain>/_api/Files 
HEADER: Authorization: Bearer <access token> 

Response: 

3001000;reason="There has been an error authenticating the request.";category="invalid_client" 

이 문제의 원인은 무엇입니까?

+0

나는이 같은 문제에 봉착 액세스하기위한 this documentation을 따르십시오. 이 문제를 해결 했습니까? –

+0

죄송합니다. 해결책을 찾으면 알려주세요. – Thushara

답변

1

문제를 해결하기 위해 시도한 단계가 확실하지 않으므로 여기에서 해결하기가 어렵습니다. OneDrive for Business에 전화하기 위해 앱을 등록하는 단계에 대한 자세한 지침을 작성했습니다. 지금은 길고 복잡하지만 앞으로는 더 나은 것을 만들려고 노력하고 있습니다.

현재 인증을 수행하는 방법의 세부 사항에서 확인할 수 있습니다 : 확인 https://dev.onedrive.com/auth/aad_oauth.htm

을 그 대신 말의 관리자에 의해 인증 될 수 있도록 응용 프로그램을 필요로하기 때문에 당신이 너무 많은 권한을 요구하고 있지 않은지 확인 사용자. 대부분의 앱에서는 앱 사용자가 직접 허용 할 수있는 '내 파일'권한 범위 만 사용할 수 있습니다.

AAD에서 작성, 응답 및 앱 구성에 대한 자세한 정보를 게시하면 더 많은 도움을받을 수 있습니다.

+0

감사합니다. 나는 그것을 지금 일하게 할 수 있었다. Azure AD에서 애플리케이션 매니페스트에 스코프를 추가하는 방법에 대해서는 명확하지 않습니다. – Thushara

1

다른 리소스를 사용하고있을 수도 있습니다.

액세스 토큰을 가져 오는 데 사용한 리소스가 파일을 가져 오는 데 필요한 리소스와 같은지 확인하십시오. 예를 들어

:

하면 액세스 토큰이 될 :: 요청하는 동안 당신이 언급 한 자원 "은 https : // 세입자 -my.sharepoint.com/"

다음 파일을 액세스하는 동일한 리소스에 대한 요청을해야합니다. "https : // 임차인 -my.sharepoint.com/ _api/v2.0/drive/root/children"

위 요청은 루트 하위 목록을 제공합니다.

  • 세입자 - 조직에 등록> 도메인 이름입니다.

더욱 API를