当我们尝试将对象放入 Forge 存储桶时收到 408 请求超时
Receiving 408 request timeout when we try to put an object to a Forge bucket
我们正在尝试通过模型导数 API 将 'bigger' 模型上传到锻造桶。
此模型的文件大小为 956MB,扩展名为 .nwd
const uploadPromise = http(uploadUrl(socketId), {
method: 'PUT',
data: Body,
headers: {
'Content-Type': 'application/octet-stream',
Authorization: `Bearer ${Forge.urns[socketId].autoDeskToken}`,
},
maxContentLength: 1024 * 1024 * 1024,
timeout: 600000,
})
{ Error: Request failed with status code 408
at createError (/nodejs/node_modules/axios/lib/core/createError.js:16:15)
at settle (/nodejs/node_modules/axios/lib/core/settle.js:18:12)
at IncomingMessage.handleStreamEnd (/nodejs/node_modules/axios/lib/adapters/http.js:202:11)
at IncomingMessage.emit (events.js:203:15)
at IncomingMessage.EventEmitter.emit (domain.js:448:20)
at endReadableNT (_stream_readable.js:1145:12)
at process._tickCallback (internal/process/next_tick.js:63:19)
url 似乎是正确的:
https://developer.api.autodesk.com/oss/v2/buckets/-BUCKETNAME-/objects/-filename-.nwd
这个错误可能是什么原因?
这是客户遇到的问题。
亲切的问候,
托马斯
有趣的是,错误代码 408 未在端点的文档中列出:https://forge.autodesk.com/en/docs/data/v2/reference/http/buckets-:bucketKey-objects-:objectName-PUT。错误代码很可能来自某个中间层 (Apigee),而不是直接来自 Forge 服务器。
但是,要上传这么大的文件,我强烈建议使用数据管理服务中提供的“可续传上传”功能。您可以在我的 TypeScript 代码中找到可续传上传如何工作的示例:https://github.com/petrbroz/vscode-forge-tools/blob/develop/src/commands/data-management.ts#L230-L272.
我们正在尝试通过模型导数 API 将 'bigger' 模型上传到锻造桶。 此模型的文件大小为 956MB,扩展名为 .nwd
const uploadPromise = http(uploadUrl(socketId), {
method: 'PUT',
data: Body,
headers: {
'Content-Type': 'application/octet-stream',
Authorization: `Bearer ${Forge.urns[socketId].autoDeskToken}`,
},
maxContentLength: 1024 * 1024 * 1024,
timeout: 600000,
})
{ Error: Request failed with status code 408
at createError (/nodejs/node_modules/axios/lib/core/createError.js:16:15)
at settle (/nodejs/node_modules/axios/lib/core/settle.js:18:12)
at IncomingMessage.handleStreamEnd (/nodejs/node_modules/axios/lib/adapters/http.js:202:11)
at IncomingMessage.emit (events.js:203:15)
at IncomingMessage.EventEmitter.emit (domain.js:448:20)
at endReadableNT (_stream_readable.js:1145:12)
at process._tickCallback (internal/process/next_tick.js:63:19)
url 似乎是正确的: https://developer.api.autodesk.com/oss/v2/buckets/-BUCKETNAME-/objects/-filename-.nwd
这个错误可能是什么原因?
这是客户遇到的问题。
亲切的问候, 托马斯
有趣的是,错误代码 408 未在端点的文档中列出:https://forge.autodesk.com/en/docs/data/v2/reference/http/buckets-:bucketKey-objects-:objectName-PUT。错误代码很可能来自某个中间层 (Apigee),而不是直接来自 Forge 服务器。
但是,要上传这么大的文件,我强烈建议使用数据管理服务中提供的“可续传上传”功能。您可以在我的 TypeScript 代码中找到可续传上传如何工作的示例:https://github.com/petrbroz/vscode-forge-tools/blob/develop/src/commands/data-management.ts#L230-L272.