Google api Google Bigquery API tables.insert from CSV为本地文件提供无效的源URI
我有一个CSV文件,我想使用tables.insert Google Bigquery API调用上载该文件,这允许我使用externalDataConfiguration,在这里我可以上载CSV文件,在Bigquery中自动创建表,然而,我不断得到无效的源URI返回-我上传的文件位于我的web服务器上,可以公开访问-我最初认为这是权限,因为我在Postman上测试它,但是,将其移动到我的web服务器时,我得到了完全相同的响应 使用的旋度示例如下:Google api Google Bigquery API tables.insert from CSV为本地文件提供无效的源URI,google-api,google-bigquery,Google Api,Google Bigquery,我有一个CSV文件,我想使用tables.insert Google Bigquery API调用上载该文件,这允许我使用externalDataConfiguration,在这里我可以上载CSV文件,在Bigquery中自动创建表,然而,我不断得到无效的源URI返回-我上传的文件位于我的web服务器上,可以公开访问-我最初认为这是权限,因为我在Postman上测试它,但是,将其移动到我的web服务器时,我得到了完全相同的响应 使用的旋度示例如下: { "externalDataConfig
{
"externalDataConfiguration": {
"sourceUris": [
"https://xxxx/datasets/testing/claims.csv"
],
"sourceFormat": "CSV",
"csvoptions": {
"fieldDelimiter": ",",
"skipLeadingRows": "1"
},
"autodetect": true
},
"tableReference": {
"tableId": "TEST_THIS_UPLOAD3"
}
}
我已经用google sheets数据集对此进行了测试,效果很好,但是CSV给了我一些问题-回答如下:
{
"error": {
"code": 400,
"message": "Invalid source URI: https://xxx/datasets/testing/laims.csv",
"errors": [
{
"message": "Invalid source URI: https://xxx/datasets/testing/claims.csv",
"domain": "global",
"reason": "invalid"
}
],
"status": "INVALID_ARGUMENT"
}
}
BigQuery不支持您尝试使用的HTTP上的URL BigQuery在此外部导入中支持3个源:
- 云存储URI
- 谷歌云大表URI
- 谷歌云数据存储备份
您需要将CSV放入Google云,并在API请求中使用GCS文件位置的URI 非常感谢,我正忙着看这个,将在API中添加另一个步骤,首先将csv上传到云存储,文档非常令人沮丧