我正在尝试按照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";
}
由于自动zip失败,我查看了zip存档的内容,发现其内容如下:
InvalidRequest
请求特定的回复 标头不能用于匿名GET requests.50AD2DF02048EB4Dxkwj8JkN + KWRbrShcz4pGBixF238CzefL1018 / oG + 5oAj9v5 + W40532yQseoZ + aGev0ig / GhaWI =
我应该使用什么代码来检索我的OBJ文件?
答案 0 :(得分:0)
请尝试在CLI上下载文件,然后首先对所有错误进行故障排除,然后将cURL命令放入代码中。您可以使用curl -v
选项告诉cURL转储已发送的实际请求的标头和内容,以帮助您调查错误。
在查看S3对象的URL时,建议不要删除User-Agent
和Accept
标头(根据AWS可接受的Common Request Headers),而不必查看实际发送的GET请求。使用带有标题的网址更改查询字符串(例如下载光场景输出的链接)。您可以使用以下选项进行操作:
curl -H "Accept:" -H "User-Agent:" -o "path/to/your/saved/file" http://s3.amazonaws.com/...
如果未指定,否则cURL将使用这些标头的默认值发送GET请求。鉴于您收到的错误消息可能是这里的问题。