【问题标题】:Autodesk forge scenelink download cannot be unzippedAutodesk forge 场景链接下载无法解压
【发布时间】:2019-06-13 03:48:06
【问题描述】:

我正在尝试按照 Autodesk Forge 文档 [此处][1] 中的说明创建和下载 3D 模型。通过成功完成模型,一切都很好。

我用这个 PHP 代码下载文件:

$curl_cmd ="curl -o $photosceneDIR/$photosceneID.obj.zip $download_link";
$json = shell_exec ( $curl_cmd );

$json2 = file_get_contents("$photosceneDIR/$photosceneID.obj.zip");
$zip = new ZipArchive;
$res = $zip->open("$photosceneDIR/$photosceneID.obj.zip");
if ($res === TRUE) 
{
    $zip->extractTo('$photosceneDIR/$photosceneID.obj');
    $zip->close();
} else {
    echo  "ERROR: could not unzip $photosceneDIR/$photosceneID.obj.zip";
}

由于自动压缩失败,我查看了压缩包的内容,发现内容如下:

InvalidRequest请求具体回复 标头不能用于匿名 GET requests.50AD2DF02048EB4Dxkwj8JkN+KWRbrShcz4pGBixF238CzefL1018/oG+5oAj9v5+W40532yQseoZ+aGev0ig/GhaWI=

我应该使用什么代码来检索我的 OBJ 文件?

【问题讨论】:

    标签: curl autodesk-forge autodesk-realitycapture


    【解决方案1】:

    尝试先在 CLI 上下载文件并解决所有错误,然后将 cURL 命令放入您的代码中。您可以使用 curl -v 选项告诉 cURL 转储发送的实际请求的标头和内容,以帮助您查看错误。

    在不查看实际发送的 GET 请求的情况下,我建议在使用带有标头更改查询的 URL 卷曲 S3 对象时删除 User-AgentAccept 标头(根据 AWS 标记为可接受的 Common Request Headers)字符串(例如下载照片场景输出的链接)。您可以使用以下选项来执行此操作:

    curl -H "Accept:" -H "User-Agent:" -o "path/to/your/saved/file" http://s3.amazonaws.com/...
    

    如果没有指定,cURL 会发送带有这些标头默认值的 GET 请求。鉴于您收到的错误消息可能是这里的问题。

    【讨论】:

      猜你喜欢
      • 2021-11-05
      • 2019-06-01
      • 2021-01-16
      • 2019-09-19
      • 2019-09-08
      • 2019-10-02
      • 2020-10-06
      • 2020-09-25
      • 2021-02-10
      相关资源
      最近更新 更多