我试图使用img标签在我的ionic / cordova应用程序中显示用户的照片,如下所示,
<img src="ftp://10.132.21.100/PatientPhoto/Temp_emp.jpg" alt="no image"/>
图像未显示在APP中(无法加载资源错误)。但是如果我在Android移动浏览器中输入相同的URL(ftp://10.132.21.100/PatientPhoto/Temp_emp.jpg),我可以查看该图像。我正在运行调试版本,所以我猜这不是一个权限问题。我通过在config.xml文件中添加以下行来完成白名单,
<access origin="*"/>
我尝试添加以下行也没有任何成功,
<allow-intent href="ftp://*/*" />
<allow-navigation href="ftp://*/*" />
还将html文件中的Content-Security-Policy添加如下,仍然面临同样的问题。
<meta http-equiv="Content-Security-Policy" content="default-src *; script-src 'self' 'unsafe-inline' 'unsafe-eval' *; style-src 'self' 'unsafe-inline' *">
如果我使用img src的http URL,它会工作。图像存储在ftp服务器中,因此我无法使用http URL。任何建议都受到高度赞赏。
答案 0 :(得分:2)
您需要安装cordova whitelist plugin并配置config.xml
文件。
请添加以下标记:<allow-intent href="ftp://*/*" />
或者如果您想允许所有内容:<access origin="*">
答案 1 :(得分:2)
您可以尝试修改src属性,如下所示:
<img src="ftp://yourusername:yourpassword@10.132.21.100/PatientPhoto/Temp_emp.jpg"/>
它会工作,但你会给每个人你的ftp密码。不要在现场网站上使用它
答案 2 :(得分:1)
您是否拥有内容安全策略标题:
<meta http-equiv="Content-Security-Policy" />
您需要在显示图像的页面上显示此信息。
请参阅以下链接以获取指示:https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-whitelist/#content-security-policy
答案 3 :(得分:0)
&LT; img src =&#34; ftp://10.132.21.100/PatientPhoto/Temp_emp.jpg"&gt;
在&#34;之间给出src; &#34;并确保您的服务器正在运行