代码之家  ›  专栏  ›  技术社区  ›  Changyoon Yang

403调用Autodesk Forge的DerivativeApi时出错

  •  0
  • Changyoon Yang  · 技术社区  · 7 年前

    Autodesk Forge 导数API 无法使用我的客户端id和机密。API返回未经授权的错误, {状态代码:403,状态消息:'未授权} .

    但它们使用示例的客户id/机密(来自 https://github.com/Autodesk-Forge/forge-api-nodejs-client/blob/master/samples/dmSample.js ).

    使用免费帐户调用派生EAPI(用于翻译)是否有任何限制?还是我该做点什么?

    下面是示例代码。。。

    var ForgeSDK = require('forge-apis');
    
    // TODO - insert your CLIENT_ID and CLIENT_SECRET
    // Below id/secret from the sample are working, but mine is not.
     var CLIENT_ID = 'wmizntnpzCJxPGF9lxsIiTZGbGO2cJqw',
       CLIENT_SECRET = 'g5IPJwvhOHcrdbFy';
    
    var derivativesApi = new ForgeSDK.DerivativesApi();
    
    // Initialize the 2-legged oauth2 client
    var oAuth2TwoLegged = new ForgeSDK.AuthClientTwoLegged(CLIENT_ID, CLIENT_SECRET,
      ['data:write', 'data:read', 'bucket:read', 'bucket:update', 'bucket:create'], true);
    
    function defaultHandleError(err) {
      console.error('\x1b[31m Error:', err, '\x1b[0m');
    }
    
    oAuth2TwoLegged.authenticate().then(function (credentials) {
      console.log("**** Got Credentials", credentials);
      derivativesApi.getFormats({}, oAuth2TwoLegged, oAuth2TwoLegged.getCredentials()).then(res => {
        console.log(res);
      }, defaultHandleError);
    }, defaultHandleError);
    

    谢谢

    1 回复  |  直到 7 年前
        1
  •  0
  •   Augusto Goncalves    7 年前

    首先,也是非常重要的, 从未 共享您的ID(&A);秘密如果以上是正确的,请创建一个新的 秘密 (使其无效)。

    现在,ID;Secret应该适用于任何示例,只要确保为其激活了API即可。在应用程序上,选择 Model Derivative API 在屏幕上,如果不可用, please review this article .

    最后,上面的代码示例实际上并没有调用模型派生。如果是这样,请注意上载到一个帐户的文件无法从其他帐户访问,并且URNs是唯一的。