【问题标题】:Angular.js + Socket.io image rendering issue with iOS7 / SafariiOS7 / Safari 的 Angular.js + Socket.io 图像渲染问题
【发布时间】:2014-07-30 16:23:10
【问题描述】:

我正在运行一个带有 Angular.js(版本 1.2.21)和 Socket.io 的网络应用程序,用于基于图像的简单聊天。 (点击图片,图片链接会发送给聊天室中的其他人)。消息被添加到 $scope.messages 并循环:

   <div ng-repeat="message in messages">
    <p>{{message.user}}</p> 
    <p ng-bind-html="message.text | unsafe"></p>
    <p>{{message.time}}</p> 
    <hr>
  </div>

{{message.text}} 类似于 "&lt;img src='/img/test.png'&gt;"

为了在 Angular 中渲染图像,我向 {{message.text}} 添加了“不安全”清理过滤器:

.filter('unsafe', function($sce) {
    return function(val) {
        return $sce.trustAsHtml(val);
    };
})

除了运行 Safari/iOS7 的设备(iphone、ipad)之外,所有设备(安卓、桌面)上的图像加载速度都非常快。

当用户的新聊天被添加到聊天的 $scope.messages 提要(通过推送到 $scope.messages 数组的末尾)时,它不会显示经过清理的&lt;img&gt;(它是空白的),但会显示在提要中显示其他消息信息{{message.user}}{{message.time}}

大约 10 秒后,净化后的 &lt;img&gt; 可能会加载到设备上,但并非总是如此。

如果有来自其他设备的聊天,那么所有未渲染的图像都会突然正常显示。

【问题讨论】:

    标签: javascript ios angularjs safari socket.io


    【解决方案1】:

    好的,所以我发现了问题。 nginx需要升级到1.4.4

    更多关于具体做什么的信息在这里: http://www.slashgeek.net/2013/05/08/how-to-get-the-latest-nginx-on-ubuntu-12-04-2-lts-precise-pangolin/

    这里: WebSocket connection failed with nginx, nodejs and socket.io

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-09
      • 2020-08-31
      • 2015-09-12
      • 2010-10-29
      • 2018-04-04
      • 1970-01-01
      • 1970-01-01
      • 2011-01-28
      相关资源
      最近更新 更多