Внедрение Revit в Excel Exporter в Autodesk Forge - PullRequest
0 голосов
/ 24 октября 2018

Я пытаюсь реализовать экспортер Revit to Excel, о котором говорилось здесь .Кнопка работает и передает урну и токен

ForgeXLS.downloadXLSX(urn, token, callback /*Optional*/);

Я получаю сообщение об ошибке "" GET "403 (запрещено)" enter image description here

Я расширяюучебник по Скелетам Расширений здесь .

Возможно ли, что есть проблема с областями действия ... если да, то можете ли вы подсказать мне, как настроить область действия маркера доступа, который я получаю?

Код для ForgeXLSX.downloadXLSX - это:

downloadXLSX: function (urn, token, status) {
    var fileName = decodeURIComponent(atob(urn).replace(/^.*[\\\/]/, '')) + '.xlsx';
    if (fileName.indexOf('.rvt') == -1) {
      if (status) status(true, 'Not a Revit file, aborting.');
      return;
    }

    if (status) {
      status(false, 'Preparing ' + fileName);
      status(false, 'Reading project information....');
    }

    this.prepareTables(urn, token, function (tables) {
      if (status) status(false, 'Building XLSX file...');

      var wb = new Workbook();
      jQuery.each(tables, function (name, table) {
        if (name.indexOf('<')==-1) { // skip tables starting with <
          var ws = ForgeXLS.sheetFromTable(table);
          wb.SheetNames.push(name);
          wb.Sheets[name] = ws;
        }
      });

      var wbout = XLSX.write(wb, {bookType: 'xlsx', bookSST: true, type: 'binary'});
      saveAs(new Blob([s2ab(wbout)], {type: "application/octet-stream"}), fileName);

      if (status) status(true, 'Downloading...');
    })
  },

Ответы [ 2 ]

0 голосов
/ 25 октября 2018

Область применения: вам понадобятся обе данные: : поле чтения: чтение , чтобы иметь достаточный доступ к метаданным модели:

enter image description here

Токен с недостаточной областью действия оканчивается на 403: enter image description here

Убедитесь, что ваш сервер правильно настроил область в теле запроса для получения токенов доступа.

ИЛучше всего наблюдать за переменными URN и Token в процессе вызова конечных точек Forge: здесь, в ForgeXLS.forgeGetRequest : enter image description here

0 голосов
/ 25 октября 2018

Немного покопавшись (и немного помощи от друга) выяснили, что это все-таки прицелы.Добавление области данных: чтение к общедоступной области в файле config.js обеспечило необходимый доступ, и теперь экспортер работает.

 scopes: {
        // Required scopes for the server-side application
        internal: ['bucket:create', 'bucket:read', 'data:read', 'data:create', 'data:write'],
        // Required scope for the client-side viewer
        public: ['viewables:read', 'data:read']
    }
...