2016-09-05 2 views
1

내가 API 개발을 위조 새로운 오전과 내가 FORGE API를 사용하여 데이터를 관리 할 수있는 콘솔 응용 프로그램을 개발하기 위해 노력하고있어 파일을 업로드,이 내가 따랐다 단계까지오토 데스크 포지 API

1.I이 있습니다 FORGE에 APP를 성공적으로 등록했습니다.

2.The는 2 다리 인증을 사용하여 OAuth 토큰을 획득했습니다.

4.Finally 내가 성공적으로 내 파일을 업로드 할 FORGE에 버킷을 만들었습니다

3.After 나는 양동이에 작은 텍스트 파일을 업로드 시도하고 일했다,하지만 난 REVIT을 업로드 할 때 파일 (약 18MB)에서 "둘 이상의 오류"예외가 발생합니다.

내가이 문제를 해결하기 위해

  string filePath = @"C:\Users\Administrator\Desktop\Demo revit file\sample.rvt"; 
      string url = "https://developer.api.autodesk.com/oss/v2/buckets/mybucket/objects/sample.rvt"; 
      using (var client = new HttpClient()) 
      { 



       client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", AccessToken);   
       var response= client.PutAsync(url, new StreamContent(File.OpenRead(filePath))).Result.EnsureSuccessStatusCode(); 
       string res = response.ToString(); 
       Console.WriteLine("Response: " + res); 
      } 

이 제발 도와주세요 파일을 업로드하기 위해 사용하고 코드입니다.

+0

더 높은 수준의 라이브러리를 사용하여 REST 요청을 처리하는 것이 좋습니다. 기본 HttpClient로 "수동"으로 구현하려면 경우에 따라 적절한 작업이 필요할 수 있습니다. RestSharp는이 작업을 완화시키는 꽤 잘 설정된 라이브러리입니다. RestSharp를 사용할 때 동일한 매개 변수를 사용해야 node.js 샘플을 볼 수 있습니다. https://github.com/leefsmp/forge/blob/master/src/server/api/services/OssSvc.js# L189 –

+0

@PhilippeLeefsma 안녕하세요 - 엔드 포인트 콜을 만들기 위해 Google 도서관과 동등한 오토 데스크 팀이 제작 한 라이브러리가 있습니까? 예 : https://developers.google.com/api-client-library/? – BKSpurgeon

+0

https://developer.autodesk.com/en/docs/quickstarts/v1/overview/ –

답변

1

Philipe의 의견 (RestSharp library 사용을 제안 함)에 대용량 파일 업로드를 처리하는 가장 좋은 방법 인 RESUMABLE endpoint을 대신 사용하는 것이 좋습니다.

+0

에서 Forge SDK를 확인하십시오. 재개 가능한 엔드 포인트 –

+0

과 관련된 샘플을 공유해 주실 수 있습니까? 대부분의 로직은 https ://github.com/Developer-Autodesk/view-and-data-npm/blob/master/view-and-data.js#L363 –

관련 문제