首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cURL Tableau REST API -上传数据源

cURL Tableau REST API -上传数据源
EN

Stack Overflow用户
提问于 2021-08-11 19:54:51
回答 1查看 191关注 0票数 0

我正在尝试完成一个三步的过程,使用REST API和cURL将Tableau数据源(Excel文件)上传到服务器。

Tableau的帮助建议初始化上传,附加到文件上传,然后发布。

https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_ref_data_sources.htm#publish_data_source

在之前的cURL / REST调用中,我已经包含了一个.xml包,其中包含有关调用的特定信息。Tableau help没有提供关于在.xml包中执行这3个步骤所需内容的信息。下面是我到目前为止所使用的cURL命令,但如果能对我遗漏的内容提供更多的指导,则不胜感激。

发起上传

代码语言:javascript
复制
curl -X POST -H {tableau_site}/api/3.7/sites/{site_ID}/fileUploads

这应该会输出一个会话ID,但是调用失败了,说明“URL错误”。

追加要上载的文件

代码语言:javascript
复制
curl -X PUT -H {tableau_site}/api/3.7/sites/{site_ID}/{upload_session_ID}

发布

代码语言:javascript
复制
curl -X POST -H {tableau_site}/api/3.7/sites/{site_ID}?uploadSessionId={upload_sessionID}&datasourceType=excel-direct&overwrite=true

感谢您的帮助--谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-08-14 20:09:43

Excel文件不是Tableau数据源。Tableau数据源具有描述列和其他信息的元数据,并引用包含数据的Excel文件(或数据库)。Tableau数据源可以由扩展名为TDS的xml文件表示。您还可以创建一个带有TDSX扩展名的打包数据源,该扩展名将TDS文件与原始XLSX文件的副本压缩在一起。

您希望发布TDSX文件,而不是XLSX文件

如果你使用的是Python,这个库将使REST API的使用变得更容易https://tableau.github.io/server-client-python/docs/。此示例可能会对https://github.com/tableau/server-client-python/blob/master/samples/publish_datasource.py有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68748209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档