无法通过 API 使用或不使用 ApiaryIO 更新 Power BI table 架构
Unable to update a Power BI table schema through the API with or without ApiaryIO
我正在使用 Power BI API。
我有一个包含一些 table 和行的数据集。
来自 Power BI API Console 我在检索数据集或 tables 时没有任何问题。
但是 table 资源上的 PUT 动词总是 returns 504 - 代理请求超时
这是我第一次使用 Apiary IO,所以这可能是它的问题而不是 Power BI 更新,但这让我产生了一些问题:
- 是否有任何解决方法来测试 Power BI,例如使用 Fiddler?我可以输入 url 和 body,但如果我没记错的话,我需要一个带有 OAuth2 令牌的授权 header。我怎样才能得到它? ApiaryIO 似乎隐藏了它。
- 根据 Update Schema Documentation,资源的 URL 是
https://api.powerbi.com/v1.0/myorg/datasets/{myDatasetId}/tables/{myTableName}
动词是 PUT
。 JSON body 中的 "name": "???"
参数是什么意思?是 table 的名字还是其他什么?我假设它是 table 名称,但它似乎是多余的,因为我已经按照给定的 URL. 访问资源 {myTableName}
- 我最后一个相关问题是如何在不修改其数据的情况下重命名特定 table 的列?这是我试图通过更新架构来实现的,但我不明白 Power BI 如何知道我要重命名的列。
谢谢!
抱歉,您遇到了问题。您可以通过两种方式获取令牌 - 正确的方式是在 AAD 中创建应用程序(here's how). The wrong way ;) is to open the Power BI.com service, in a browser then open fiddler, then press F5 to reload. You should be able to see the Access Token in various requests. If you register an app, you can plug in your App's information in one of the samples we have https://powerbi.microsoft.com/developers,请参阅客户端应用程序或 Web 应用程序。
您在 table 中提供的名称是在您构建报告时出现在 UI 中的友好的人类可读名称。没有它,系统将无法被人类使用:).
让我在#3 回复你。
调用 PUT table 将尝试保存升级 table 而不会丢失任何数据(除非您删除了列)。如果不能,它将 return 一个冲突错误。如果您仍想更新 table 架构,则必须删除行并再次调用 PUT table。目前没有重命名列的直接方法。 PUT table 会将其视为对该列的删除和添加。您会丢失该列中的数据,但不会丢失整个 table.
我正在使用 Power BI API。 我有一个包含一些 table 和行的数据集。
来自 Power BI API Console 我在检索数据集或 tables 时没有任何问题。
但是 table 资源上的 PUT 动词总是 returns 504 - 代理请求超时
这是我第一次使用 Apiary IO,所以这可能是它的问题而不是 Power BI 更新,但这让我产生了一些问题:
- 是否有任何解决方法来测试 Power BI,例如使用 Fiddler?我可以输入 url 和 body,但如果我没记错的话,我需要一个带有 OAuth2 令牌的授权 header。我怎样才能得到它? ApiaryIO 似乎隐藏了它。
- 根据 Update Schema Documentation,资源的 URL 是
https://api.powerbi.com/v1.0/myorg/datasets/{myDatasetId}/tables/{myTableName}
动词是PUT
。 JSON body 中的"name": "???"
参数是什么意思?是 table 的名字还是其他什么?我假设它是 table 名称,但它似乎是多余的,因为我已经按照给定的 URL. 访问资源 - 我最后一个相关问题是如何在不修改其数据的情况下重命名特定 table 的列?这是我试图通过更新架构来实现的,但我不明白 Power BI 如何知道我要重命名的列。
{myTableName}
谢谢!
抱歉,您遇到了问题。您可以通过两种方式获取令牌 - 正确的方式是在 AAD 中创建应用程序(here's how). The wrong way ;) is to open the Power BI.com service, in a browser then open fiddler, then press F5 to reload. You should be able to see the Access Token in various requests. If you register an app, you can plug in your App's information in one of the samples we have https://powerbi.microsoft.com/developers,请参阅客户端应用程序或 Web 应用程序。
您在 table 中提供的名称是在您构建报告时出现在 UI 中的友好的人类可读名称。没有它,系统将无法被人类使用:).
让我在#3 回复你。
调用 PUT table 将尝试保存升级 table 而不会丢失任何数据(除非您删除了列)。如果不能,它将 return 一个冲突错误。如果您仍想更新 table 架构,则必须删除行并再次调用 PUT table。目前没有重命名列的直接方法。 PUT table 会将其视为对该列的删除和添加。您会丢失该列中的数据,但不会丢失整个 table.