Скачать файл ревита из ковша кузницы a360
Как я могу загрузить файл из созданной мной корзины Autodesk A360? Этот файл является файлом проекта Revit, и для авторизации я использовал двухсторонний OAuth.
2 ответа
Вам нужно использовать трехстороннюю аутентификацию для доступа к файлам из A360, потому что вам нужно одобрение пользователя, к учетной записи которого вы обращаетесь - пользователь является третьим участником. Если вы пытаетесь получить доступ к файлам из личной корзины вашего собственного приложения в OSS, вам не нужно одобрение пользователя, поскольку корзина принадлежит вашему приложению, а не пользователю.
В качестве дополнительного примечания: в случае попытки доступа к файлам BIM 360 (если это именно то, о чем вы говорите) с помощью API управления данными, на данный момент вам необходимо использовать двухстороннюю аутентификацию, но ваше приложение должно быть одобрено вручную. нами.
Проверка подлинности с 2-мя ножами против 3- сторонней покрыта веб-трансляцией Augusto: Введение в oAuth и API управления данными
Я не получаю ключ корзины после попытки создать контейнер, когда я изменяю v1 на v2...
увидеть ниже
публичная статическая строка GetBucket(строка accessToken, строка bucketKey, строка политики) {
// (1) Build request
var client = new RestClient();
client.BaseUrl = new System.Uri(baseApiUrl);
// Set resource/end point
var request = new RestRequest();
request.Resource = "oss/v1/buckets";
request.Method = Method.GET;
// Add headers
request.AddHeader("Authorization", "Bearer " + accessToken);
request.AddHeader("Content-Type", "application/json"); // MH: skipping this works.
// Add JSON body. in simplest form.
request.AddJsonBody(new { bucketKey = bucketKey, policy = policy });
// (2) Execute request and get response
IRestResponse response = client.Execute(request);
//TaskDialog.Show("create bucket", response.StatusDescription);
// Save response. This is to see the response for our learning.
m_lastResponse = response;
TaskDialog.Show("response", m_lastResponse.ToString());
// Get the key = bucket name
string key = "";
if (response.StatusCode == HttpStatusCode.OK)
{
JsonDeserializer deserial = new JsonDeserializer();
OssBucketsResponse bucketsResponse = deserial.Deserialize<OssBucketsResponse>(response);
key = bucketsResponse.key;
}
return key; // the bucket name
}