通过Cloud Storage JSON API上传Excel文件后为空,请求排查帮助
排查GCS上传Excel文件为空的问题
问题详情
使用Cloud Storage JSON API上传Excel文件,执行的curl命令如下:
curl -X POST --data-binary @OBJECT_LOCATION \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" \ "https://storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o?uploadType=media&name=test.xlsx"
文件已成功上传至GCS,但打开后显示为空。
排查步骤
- 验证源文件有效性:先确认本地的Excel文件本身包含内容,手动打开本地文件检查,排除源文件为空的情况。
- 核对文件路径:确保
OBJECT_LOCATION是本地文件的正确路径(绝对路径或相对路径),若路径包含空格需用引号包裹,比如@"/Users/username/Documents/my file.xlsx",避免因路径错误上传空内容。 - 检查上传过程完整性:在curl命令后添加
-v参数启用verbose模式,查看上传的字节数是否与本地文件大小匹配。如果字节数为0或远小于本地文件,说明curl未正确读取本地文件。 - 查看GCS文件属性:登录GCS控制台,查看
test.xlsx的文件大小。若大小为0,说明上传的内容为空;若大小与本地文件一致但打开为空,可能是文件格式或编码问题。 - 确认令牌权限:检查OAUTH2_TOKEN是否拥有
devstorage.objects.create权限,且令牌未过期。权限不足可能导致上传不完整(虽然此场景下通常会返回错误,但仍需排除)。 - 测试已知正常文件:使用另一个确认内容正常的
.xlsx文件重复上传操作,若问题依旧,说明命令或API配置存在问题;若正常,则原文件可能存在格式损坏。
内容的提问来源于stack exchange,提问作者curlydora
相关产品推荐
相关产品推荐

