【问题标题】:Getting error while trying to render a view from tableau server using javascript尝试使用 javascript 从 tableau 服务器呈现视图时出错
【发布时间】:2016-02-09 14:44:55
【问题描述】:

我在尝试运行 javascript 代码以尝试从具有受信任身份验证的 tableau 服务器呈现视图时遇到以下错误。

在尝试运行 JS 代码时,视图不会在浏览器中呈现,但是,如果我在一个选项卡上登录到我的 tableau 服务器并在另一个选项卡中运行 JS,则视图将被呈现为来自浏览器缓存的身份验证。

错误提示:

拒绝在框架中显示 ,因为它将“X-Frame-Options”设置为“SAMEORIGIN”。

代码:

<script type="text/javascript" 
    src="http://<tableau server URL of the view>"></script>
<script type="text/javascript">
    function initViz() {
        var containerDiv = document.getElementById("vizContainer"),
            url = "<Tableau server URL of the view>",
            options = {
                hideTabs: true,
                onFirstInteractive: function () {
                    console.log("Run this code when the viz has finished loading.");
                }
            };
        var viz = new tableau.Viz(containerDiv , url);
        }

请求帮助。

【问题讨论】:

  • 你正试图从差异服务器访问吗?
  • @AnoopLL:tableau 服务器是托管报告的位置,我尝试从本地和同一服务器访问该报告(如执行 JS)。在这两种情况下都不起作用。顺便说一句,请多多包涵。我对编码真的很陌生:(
  • 如果你在同一台服务器上尝试它应该可以工作。你只需用谷歌搜索“X-Frame-Options”到“SAMEORIGIN”问题,它与编码无关。你怎么样试图从同一台服务器访问..?

标签: javascript tableau-api


【解决方案1】:

解决了。不得不对 tableau 服务器配置进行一些更改。 禁用点击劫持,它起作用了。

谢谢大家,尤其是@anoop :)

干杯!

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,我在没有禁用点击劫持的情况下修复了它。!

    这是我所做的:

    如果你不想禁用点击劫持,那么,

    而不是使用您的画面视图的浏览器 url,

    在您的视图中的 SHARE 按钮中使用由 tableau server 提供的链接(是的!我说的是 URL,而不是嵌入代码)。

    希望这会有所帮助!

    【讨论】:

      【解决方案3】:

      尝试在链接末尾添加?:embed=yes

      【讨论】:

        【解决方案4】:

        您必须进入浏览器设置并允许第三方 cookie。 Tableau 在文档中明确说明了这一点。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-11-22
          • 2012-01-08
          • 1970-01-01
          • 1970-01-01
          • 2016-10-28
          • 1970-01-01
          • 1970-01-01
          • 2019-07-12
          相关资源
          最近更新 更多