开发者社区> 问答> 正文

管理可视化应用 发布可视化应用

您可以在发布开关处知晓各个应用的发布状态。开关为开时则表示应用已经发布,反之亦然。
发布功能提供了三种方式:


  • 公开分享

  • 密码访问

  • TOKEN验证免登

您可以选择合适您的方式以方便内外部用户进行可视化应用的访问。

公开分享
  1. 单击以下链接,登录 DataV 控制台。
    http://datav.aliyun.com

  2. 单击[backcolor=transparent]我的可视化,进入可视化应用管理页面。

  3. 选择一个可视化应用,单击[backcolor=transparent]发布。

打开[backcolor=transparent]发布按钮,即可通过下方 URL 链接进行公开访问。


密码访问(企业版功能)

  1. 单击以下链接,登录 DataV 控制台。
    http://datav.aliyun.com

  2. 单击[backcolor=transparent]我的可视化,进入可视化应用管理页面。

  3. 选择一个可视化应用,单击[backcolor=transparent]发布。

  4. 在发布弹窗中,打开[backcolor=transparent]验证密码开关。

  5. 输入您的验证密码。

  6. 单击[backcolor=transparent]确认后即生效。

当您再次访问链接当中的 URL 时,系统会提示需要输入密码。


Token验证(企业版功能)


如果您希望跟您的权限体系进行集成,您可以通过 Token 验证的方式实现。

  1. 单击以下链接,登录 DataV 控制台。
    http://datav.aliyun.com

  2. 单击[backcolor=transparent]我的可视化,进入可视化应用管理页面。

  3. 选择一个可视化应用,单击[backcolor=transparent]发布。

  4. 在发布弹窗中,打开[backcolor=transparent]验证 Token 开关。

在开启“验证 Token”时,DataV 会为您生成一个 Token,您需要记录下这个 Token,以备后用。
在这个时候,如果您尝试直接打开您所分享的页面,您会收到一个 Access Denied。表示您的访问被拒绝了。
如果想要打开您的页面,就需要完成下面几个步骤:

  1. 发布大屏,记录大屏编码(url 的最后一段)。

  2. 将编码与当前时间(毫秒)连起来,并用 |(竖线)分隔开。

  3. 使用 token 通过 HMAC-SHA256 base64 对上一步得到的字符串进行加密。

  4. 将时间和加密后的签名分别命名为 [backcolor=transparent]_datav_time,[backcolor=transparent]_datav_signature。

  5. 将它们依次放入 [backcolor=transparent]url 的 [backcolor=transparent]querystring 中。

下面是示例:
PHP:
  1. [backcolor=transparent]<?[backcolor=transparent]php
  2. [backcolor=transparent]  $token [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]"kBwoX9rFX9v4zbOT0Gjd_wr65DZ3P_WW"[backcolor=transparent];
  3. [backcolor=transparent]  $screenID [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]"03d1b68faeb09671046d1ef43f588c33"[backcolor=transparent];
  4. [backcolor=transparent]  $time [backcolor=transparent]=[backcolor=transparent] time[backcolor=transparent]()*[backcolor=transparent]1000[backcolor=transparent];
  5. [backcolor=transparent]  $stringToSign [backcolor=transparent]=[backcolor=transparent] $screenID[backcolor=transparent].[backcolor=transparent]'|'[backcolor=transparent].[backcolor=transparent]$time[backcolor=transparent];
  6. [backcolor=transparent]  $signature [backcolor=transparent]=[backcolor=transparent] urlencode[backcolor=transparent]([backcolor=transparent]base64_encode[backcolor=transparent]([backcolor=transparent]hash_hmac[backcolor=transparent]([backcolor=transparent]'sha256'[backcolor=transparent],[backcolor=transparent] $stringToSign[backcolor=transparent],[backcolor=transparent] $token[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]true[backcolor=transparent])));
  7. [backcolor=transparent]  $url [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]"http://local.datav.aliyun.com:9999/share/"[backcolor=transparent].[backcolor=transparent]$screenID[backcolor=transparent].[backcolor=transparent]"?_datav_time="[backcolor=transparent].[backcolor=transparent]$time[backcolor=transparent].[backcolor=transparent]"&_datav_signature="[backcolor=transparent].[backcolor=transparent]$signature[backcolor=transparent];
  8. [backcolor=transparent]?>
  9. [backcolor=transparent]<iframe width=100% height=100% src="[backcolor=transparent]<?=[backcolor=transparent]$url[backcolor=transparent]?>[backcolor=transparent]"/>

NODE.JS:
  1. [backcolor=transparent]const[backcolor=transparent] crypto [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]require[backcolor=transparent]([backcolor=transparent]'crypto'[backcolor=transparent]);
  2. [backcolor=transparent]var[backcolor=transparent] token [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]"Ev97wOUSAtJusc3Vsd9O2ngr_vfVFH67"[backcolor=transparent];
  3. [backcolor=transparent]var[backcolor=transparent] screenID [backcolor=transparent]=[backcolor=transparent]"14c5448c00ecde02b065c231d1659f38"[backcolor=transparent];
  4. [backcolor=transparent]var[backcolor=transparent] time [backcolor=transparent]=[backcolor=transparent] [backcolor=transparent]Date[backcolor=transparent].[backcolor=transparent]now[backcolor=transparent]();
  5. [backcolor=transparent]var[backcolor=transparent] stringToSign [backcolor=transparent]=[backcolor=transparent] screenID [backcolor=transparent]+[backcolor=transparent]'|'[backcolor=transparent]+[backcolor=transparent] time[backcolor=transparent];
  6. [backcolor=transparent]var[backcolor=transparent] signature [backcolor=transparent]=[backcolor=transparent] crypto[backcolor=transparent].[backcolor=transparent]createHmac[backcolor=transparent]([backcolor=transparent]'sha256'[backcolor=transparent],[backcolor=transparent] token[backcolor=transparent]).[backcolor=transparent]update[backcolor=transparent]([backcolor=transparent]str[backcolor=transparent]).[backcolor=transparent]digest[backcolor=transparent]().[backcolor=transparent]toString[backcolor=transparent]([backcolor=transparent]'base64'[backcolor=transparent]);
  7. [backcolor=transparent]var[backcolor=transparent] url[backcolor=transparent]=[backcolor=transparent]"http://datav.aliyun.com/share/"[backcolor=transparent]+[backcolor=transparent] screenID [backcolor=transparent]+[backcolor=transparent]"?_datav_time="[backcolor=transparent]+[backcolor=transparent]time[backcolor=transparent]+[backcolor=transparent]"&_datav_signature="[backcolor=transparent]+[backcolor=transparent] encodeURIComponent[backcolor=transparent]([backcolor=transparent]signature[backcolor=transparent]);

展开
收起
反向一觉 2017-10-25 13:18:41 2026 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
数据展现:可视化报表及嵌入应用 立即下载
二维火监控平台构建与探索 立即下载
《实时数据分析演示)》 立即下载