Ошибка при запросе атрибута проекта BIM 360

В настоящее время я использую лямбда-функцию AWS для автоматизации создания проекта BIM 360 с использованием нескольких конечных точек BIM 360 API.

Он работает нормально, но я только что заметил, что он перестал работать, не удалось получить доступ к GET projects/:project_id конечной точке. Мой код обращается к атрибуту job_number каждого проекта BIM 360 для фильтрации повторяющихся проектов с помощью job_number. И код не может получить ответ на запрос GET projects/:project_id.

Были ли в последнее время какие-либо изменения в API? Заранее спасибо.


person Yongjoon Kim    schedule 26.10.2020    source источник
comment
Не могли бы вы пояснить, что проблема заключается в том, что он не удался, когда GET projects /: project_id, или он не вернул данные, которые были доступны раньше? Недавно у нас была одна проблема с GET: Project / users, но не с GET projects /: project_id. Я также протестировал явно, он работает с моей учетной записью BIM, независимо от учетной записи в США или EMEA.   -  person Xiaodong Liang    schedule 29.10.2020
comment
@XiaodongLiang Большое спасибо за ответ. Иногда мне просто не удавалось получить ответ, когда я мог GET projects/:project_id конечную точку. Вот что я обнаружил: запрос API работает хорошо, когда между несколькими запросами существует хотя бы несколько минут перерыва. Когда несколько запросов отправляются в Forge почти одновременно, кажется, что он не получает ответа. Это то, чем должен быть Forge API? Может ли он одновременно обрабатывать несколько запросов?   -  person Yongjoon Kim    schedule 31.10.2020
comment
Я попытался поставить ответ. Если это поможет в вашем случае, укажите это как решение :) Если нет, пожалуйста, обновите дальше.   -  person Xiaodong Liang    schedule 31.10.2020


Ответы (1)


Судя по последнему ответу, вы достигли предела скорости. Если правильно, код ошибки ответа - 429. API каждой категории имеет ограничение скорости. например Это ограничение скорости для API управления данными https://forge.autodesk.com/en/docs/data/v2/developers_guide/rate-limiting/dm-rate-limits/ А это API BIM360: https://forge.autodesk.com/en/docs/bim360/v1/overview/rate-limits/

Таким образом, вам нужно будет установить некоторые задержки для каждого вызова, чтобы соответствовать скорости, или использовать некоторые методы управления async, такие как async-pool в Node.js, чтобы контролировать скорость вызовов или каждую минуту.

person Xiaodong Liang    schedule 31.10.2020
comment
Это действительно полезно для меня, чтобы понять ограничение скорости. Большое спасибо @XiaodongLiang - person Yongjoon Kim; 01.11.2020