开发者社区> 问答> 正文

使用https访问Datav本地环境,数据库里返回一个http的图片地址,为什么大屏无法显示图片呢?

使用https访问Datav本地环境,数据库里返回一个http的图片地址,为什么大屏无法显示图片呢?
a5bda031895c6da156d5d7940291a99a.png

展开
收起
青城山下庄文杰 2023-07-22 09:13:28 219 0
6 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    是的。Datav的上传文件大小限制取决于您所使用的Datav版本和数据源,一般情况下,Datav的免费版和专业版的上传文件大小限制为5MB,企业版的上传文件大小限制为20MB。这些限制是Datav为了保障系统的性能和稳定性而设置的。

    但是,如果您使用自己搭建的数据源,上传文件大小限制可能会受到您所使用的服务器和存储设备的限制。一些服务器或存储设备可能会对上传文件的大小、格式、类型等进行限制,以保护系统的安全和稳定性。因此,如果您需要上传大文件或特定类型的文件,可能需要根据实际情况进行相应的配置和优化。

    2023-07-27 23:24:35
    赞同 展开评论 打赏
  • 可能是在使用HTTPS的页面中不允许引用非安全的HTTP资源

    2023-07-24 22:05:04
    赞同 展开评论 打赏
  • 可以看下浏览器console信息报错呢。-此回答整理自钉群“DataV本地部署&尊享版官方群”

    2023-07-24 13:31:52
    赞同 展开评论 打赏
  • 如果您在Datav本地环境使用https访问,并且数据库返回的图片地址是http的,可能会遇到浏览器的安全策略问题,导致图片无法正常显示。

    现代浏览器有安全策略,称为"混合内容阻止"(Mixed Content Blocking)。当您的网页使用https协议加载,但其中包含http协议的资源(例如图片、样式表、脚本等),浏览器会拦截这些http请求,不允许加载。这是为了防止安全漏洞和保护用户隐私。

    在这种情况下,您的Datav大屏中引用的http图片资源会被浏览器拦截,从而导致图片无法显示。

    为了解决这个问题,您可以尝试以下几种方法:

    1. 将图片地址改为https:如果可能的话,将数据库中存储的http图片地址改为https,确保大屏加载的所有资源都是通过https协议访问的。

    2. 使用代理服务:在服务器端设置代理服务,将http图片请求转换为https请求。这样,浏览器就能正常加载这些图片了。

    3. 使用base64编码:将图片转换为base64编码,并直接将编码后的图片数据嵌入到大屏的HTML或CSS中。这样,就不需要通过http或https请求加载图片了,而是直接将图片数据嵌入页面中。

    请注意,以上方法可能需要根据您的具体情况进行适当调整和配置。此外,为了确保您的网页在https环境下能够正常显示,建议尽量使用https协议加载所有资源,包括图片、样式表和脚本等。这样可以提高网页的安全性和用户体验。

    2023-07-23 21:10:38
    赞同 展开评论 打赏
  • 首先,请确保您已经设置了正确的网络访问权限,以允许您的应用程序访问外部资源。通常,您可以在应用程序的代码中使用 if (NetworkUtil.isNetworkConnected()) 来检查是否可以访问网络。如果您的应用程序无法访问网络,则您可能需要检查您的网络设置或与您的网络服务提供商联系以获取更多信息。

    其次,请确保您已经正确地加载了图片并将其显示在您的应用程序中。您可以通过使用 Glide 或 Picasso 等库来加载图片,并使用 ImageView 或 RecyclerView 等控件来显示图片。如果您使用的是Glide,请确保您已经按照以下步骤进行操作:

    在您的项目中导入Glide库。
    在您的布局文件中添加一个 ImageView 控件,并设置其 src 属性为您要显示的图片的URL。
    在您的应用程序中调用 GlideApp.with(this) 来加载图片并将其显示在 ImageView 中。
    如果您使用的是Picasso,则您需要按照以下步骤进行操作:

    在您的项目中导入Picasso库。
    在您的布局文件中添加一个 ImageView 控件,并设置其 src 属性为您要显示的图片的URL。
    在您的应用程序中调用 Picasso.with(this) 来加载图片并将其显示在 ImageView 中。

    最后,如果您仍然无法显示图片,请检查您的应用程序的代码以确保您的图片加载正确,并检查您的网络设置是否正确。如果您无法获得正确的图片URL,请检查您是否使用了正确的图片URL,并检查您的网络连接是否正常。

    2023-07-23 09:20:27
    赞同 展开评论 打赏
  • 当您使用HTTPS访问Datav本地环境,并且数据库中返回的图片地址是HTTP的链接时,可能会导致大屏无法显示图片。这是因为浏览器在通过HTTPS加载页面时,要求所有资源(包括图片)也必须通过HTTPS进行加载,以确保数据的安全性。

    如果数据库里存储的图片地址是HTTP的链接,而大屏使用的是HTTPS协议进行访问,浏览器会阻止加载非安全的HTTP资源,从而导致图片无法显示。

    为了解决这个问题,您可以尝试以下几种方法:

    1. 使用HTTPS链接的图片:将数据库中存储的图片链接修改为HTTPS的链接。这样,大屏在HTTPS环境下加载页面时,可以正常加载HTTPS链接的图片。

    2. 图片代理转换:在您的服务器上设置一个代理脚本或服务,用于将HTTP的图片请求转换为HTTPS的请求。通过在代理脚本中获取HTTP图片并重新生成一个HTTPS的链接,然后将这个HTTPS链接提供给大屏显示。

    3. 本地部署反向代理:在您的本地环境中部署一个反向代理服务器,将HTTP请求转发到HTTPS链接。这样,即使数据库中存储的图片地址是HTTP的链接,大屏通过访问反向代理服务器时会自动将HTTP请求转换为HTTPS请求,确保图片能够正常显示。

    请根据您的具体环境和需求选择适合的解决方案。如果您需要更详细的指导或帮助,建议咨询Datav的技术支持团队或参考Datav官方文档。

    请注意,将非安全的HTTP资源在安全的HTTPS环境下加载可能存在安全风险,因此建议尽量使用HTTPS链接来确保数据的安全性。

    2023-07-22 10:24:20
    赞同 展开评论 打赏
滑动查看更多
问答排行榜
最热
最新

相关电子书

更多
阿里云&信通院《Serverless数据库技术研究报告》 立即下载
DTCC 2022大会集锦《云原生一站式数据库技术与实践》 立即下载
CDN助力企业网站进入HTTPS时代 立即下载