【问题标题】:Autodesk Forge Datamanagement API: No "extension.type" found in payloadAutodesk Forge 数据管理 API:在有效负载中找不到“extension.type”
【发布时间】:2016-12-15 12:06:04
【问题描述】:

我正在尝试使用"POST projects/:project_id/storage" 上传文件:“在 OSS 中创建一个可以上传数据的存储位置。”

我检索了我想为文件“vaac_RevBlockImperial.dwg”创建存储位置的 projectId 和 folderId。我创建了这个 curl-call:

curl
 -X POST
 -H "Authorization: Bearer 3-legged-token-with-data:create-scope" 
 -H "Accept: application/vnd.api+json" 
 -H "Content-Type: application/vnd.api+json" 
"https://developer.api.autodesk.com/data/v1/projects/a.cGVyc30uYWw6dWUyOTNmYmU0I0QyMDE2MDUwOTMxNzU3Mjgx/storage" 
 -d "{"""data""": {"""type""": """object""", """attributes""": {"""name""": """vaac_RevBlockImperial.dwg"""}, """relationships""": { """target""": {"""data""": { """type""": """folders""", """id""": """urn:adsk.wipprod:fs.folder:co.z9LUCe1_QoKWT8VFukdc9Q""" }}}}}"

因此,我得到以下响应:

{
    "jsonapi": {
    "version": "1.0"
},
"errors": [{
    "id": "2919a501-a362-46c4-a441-03fefcacb7b2",
    "status": "400",
    "code": "BAD_INPUT",
    "title": "One or more input values in the request were bad",
    "detail": "No \"extension.type\" found in payload."
}]
}

“detail”是什么意思:“No \"extension.type\" found in payload."什么意思?

【问题讨论】:

    标签: c# autodesk-forge autodesk-model-derivative


    【解决方案1】:

    您的有效负载包含无效类型,即它应该是“type:objects”而不是“type:object”。

    彼得

    【讨论】:

      【解决方案2】:

      感谢您的回答。这让我找到了一个在线JSON-validator,在那里我根据它的定义验证了身体。结果发现尸体不见了

      "jsonapi": {
          "version": "1.0"
        },
      

      在属性部分,需要“扩展”:

      "extension" : {
        "type": "myType",
        "version": "myVersion",
        "schema": { "href": "myReference" }
        }
      

      这给了我下一个用于“POST projects/:project_id/storage”调用的 JSon-body:

      {
          "jsonapi": {
              "version": "1.0"
          },
          "data": {
              "type": "object",
              "attributes": {
                  "name": "myfile.jpg",
                  "extension": {
                      "type": "myType",
                      "version": "myVersion",
                      "schema": {
                          "href": "myReference"
                      }
                  }
              },
              "relationships": {
                  "target": {
                      "data": {
                          "type": "folders",
                          "id": "urn:adsk.wipprod:fs.folder:co.mgS-lb-BThaTdHnhiN_mbA"
                      }
                  }
              }
         }
      }
      

      这在发布时给了我另一个错误,但 JSON 被接受了。给定的示例似乎没有更新到最新的定义。

      【讨论】:

      • 对于这种情况,“对象”修复应该足够了,您不需要传递扩展类型(截至目前)。
      【解决方案3】:

      按照此线程中已提供的答案进行快速更新。 更新了在线文档和教程以反映这些答案: https://developer.autodesk.com/en/docs/data/v2/tutorials/upload-file/

      【讨论】:

      • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。
      猜你喜欢
      • 2019-11-16
      • 2017-06-29
      • 2018-04-09
      • 2021-12-17
      • 2021-10-05
      • 2020-11-10
      • 2020-10-05
      • 1970-01-01
      • 2017-02-21
      相关资源
      最近更新 更多