我很难让一个社区连接器为我正在开发的一个网络应用程序工作。
我用App编写了一个非常基本的连接器,在嵌入式仪表板上执行行级筛选,使用Google提供的以下文档:https://developers.google.com/datastudio/solution/viewers-cred-with-3p-credentials
我的连接器使用getConfig()和getData()将令牌传递到API端点,该API端点返回特定于该用户的数据。
当我通过修改配置在GUI中传递令牌时,连接器工作得很好,但是当我试图使用嵌入的url传递令牌时,连接器就不能工作了。
示例1
用户令牌= 5wKu4QLvc9PC7tkPyg
步骤:
在输入字段中单击“编辑connection"
G 217



示例2
用户令牌= z6ps6Vhb9hzB333gG4
步骤:
在输入字段中单击“编辑connection"
G 237



主要问题
当我将嵌入URL用于仪表板时,我注意到App执行日志没有显示正在运行getConfig或getData操作。
最终的结果是令牌似乎根本没有传递到嵌入URL中。数据与基于GUI的报告中的数据相同。
但是,我可以知道嵌入URL正在被调用,因为它在App执行日志中确实调用了getAuthType,请参见下面的图像。(我在晚上9:50:59对GUI进行了更改,随后的时间戳是我试图点击嵌入URL)

示例
根据上面的示例2,这个嵌入URL中使用的令牌应该只返回1行数据,但它将返回所有3。
我遵循Google文档,这表明这是要使用的格式:https://datastudio.google.com/embed/reporting/[report_id_here]/page/[page_id_here]?config="{\"token\": \"[token_here]\”}”
我想知道Google文档是否不正确(或)过时了,我的嵌入url是否格式错误?我无法理解这件事。
发布于 2022-06-19 10:12:49
分辨率
getConfig()的一部分,但是很显然,您还必须为报表上的数据源添加一个参数。这将导致参数在所有字段下可见。ds0.tokenhttps://datastudio.google.com/embed/reporting/[report_id_here]/page/[page_id_here]?params=%7B"[name_from_step_2]":"[value]"%7D语法:https://datastudio.google.com/embed/reporting/[report_id_here]/page/[page_id_here]?params=%7B"[name_from_step_2]":"[value]"%7D
为我翻译成:https://datastudio.google.com/embed/reporting/9dea8b8a-5b51-4add-adb2-afda3861b241/page/VXkvC?params=%7B"ds0.token":"12345"%7D
在原始的URL格式中,如下所示:https://datastudio.google.com/embed/reporting/9dea8b8a-5b51-4add-adb2-afda3861b241/page/VXkvC?params=%7B"ds0.token":"12345"%7D
另有一项意见。我正在观察API端点上的日志,我注意到Google缓存它从端点带回的任何数据。因此,如果您在App执行日志中没有看到您已经传递的任何令牌的getData()调用,请不要感到惊讶。只是组成一个新的令牌来查看一个新的getData执行日志。
https://stackoverflow.com/questions/72675623
复制相似问题