小编abh*_*nav的帖子

Phoenix通道的套接字在分布式集群环境中不断关闭

我按照这一系列文章在Google Cloud上创建了一个部署.除了凤凰频道外,一切都按预期工作.

后端没有错误.在Javascript前端我在使用频道时获得第一个通道ERROR然后在前端使用套接字CLOSES.并且这在10-20秒的间隔内不断重复.

CHANNEL ERROR!
SOCKET CLOSE!
CHANNEL ERROR!
SOCKET CLOSE!
Run Code Online (Sandbox Code Playgroud)

从这段代码:

socket.connect()
socket.onError( e => console.log("SOCKET ERROR", e) )
socket.onClose( e => console.log("SOCKET CLOSE", e))
channel = socket.channel("note:" + noteId, {})
channel.onError( e => console.log("CHANNEL ERROR!", e) )
channel.onClose( e => console.log("CHANNEL CLOSED!", e) )
Run Code Online (Sandbox Code Playgroud)

我需要帮助来调试它并找出这个问题的起源.如果需要任何代码,请告诉我,我将使用该代码更新问题.现在已经一周了.:(

非常感谢!

(在本地运行时没问题)

更新:我看到的唯一区别是在本地服务器上,phoenix.js不断发送心跳,但这不会发生在服务器上.

更新:

---- my-ingress.yaml ----
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: my-ingress
  annotations:
    # ingress.kubernetes.io/rewrite-target: /
    kubernetes.io/ingress.class: "gce"
    kubernetes.io/ingress.global-static-ip-name: my-ingress-ip
    kubernetes.io/tls-acme: "true"
spec:
  rules:
  - host: apiv2.example.com
    http: …
Run Code Online (Sandbox Code Playgroud)

channel elixir kubernetes phoenix-framework

7
推荐指数
1
解决办法
527
查看次数

如何在不对控制器进行dom操作的情况下将一些角度元素附加到div?

有一个div有一些id说mainDiv.然后有三个按钮.单击每个按钮会向mainDiv添加具有不同指令的不同角元素.

<div id="mainDiv"></div>
<button ng-click="appendSomeElement1ToMainDiv()"></button>
<button ng-click="appendSomeElement2ToMainDiv()"></button>
<button ng-click="appendSomeElement3ToMainDiv()"></button>
Run Code Online (Sandbox Code Playgroud)

如何在不使用控制器中的dom操作的情况下实现此目的.它太诱人了

$scope.appendSomeElement1ToMainDiv = function () {
  var element1 = angular.element("<p>I am a new element</p>");
  $("#mainDiv").append(element1);
};
Run Code Online (Sandbox Code Playgroud)

angularjs

5
推荐指数
1
解决办法
2万
查看次数

在pouchdb / couchdb中与特定场景进行部分同步

我一直在阅读有关pouchdb / couchdb / cloudant的文档和文章。我无法在脑海中创建这种简单的体系结构。我需要帮助!

因此,应用程序上有很多用户。每个用户都有一个单独的数据库(我读的是pouch / couch / cloudant设置中的方法)。

  • 现在,让我们仅关注单个用户。该用户的服务器(couchdb)上已经存在一些远程数据。他存储了3个单独的文档。
  • 他从浏览器1访问docs 1和docs2。从浏览器2访问docs 2和docs 3。
  • 两个浏览器中的内容必须同步。

pouchdb中的简单设计

  1. 我应该使用pouchdb的Sync api吗?但据我所读,它同步了整个数据库。如何使用此api仅同步中央数据库的一部分。过滤后的复制在这里回答吗?

  2. 而且我也不想一次调用两个文档。他可以根据需要访问文档。

  3. 用邮袋/邮袋数据库实现此逻辑的正确方法是什么?如果您可以用一些代码解释一下,那就太好了。我只需要基本想法。

  4. 在即将发布的CouchDB 2.0和PouchDB-find发行版中,这种问题是否容易解决?

非常感谢!

couchdb cloudant pouchdb

4
推荐指数
1
解决办法
1288
查看次数

需要创建一个解码器,用于在父级别创建数据记录,并将其附加到elm中的所有子记录

我有一个这样的json:

{
  "username": "john",
  "email": "john@gmail.com",
  "items": [
     { 
        "id": "id 1"
     },
     { 
        "id": "id 2" 
     }
  ]
}
Run Code Online (Sandbox Code Playgroud)

我需要解码它List Item.物品是这样的记录.

type alias Item =
    { id : String
    , user : User
    }

type alias User =
    { username : String
    , email : String
    }
Run Code Online (Sandbox Code Playgroud)

我想从顶级json中提取用户名和电子邮件.然后从中创建一条User记录,然后将该用户放入每条Item记录中List Item.

我知道它可以通过使用来完成Decode.andThen,但不能使它工作.

对于解码我使用的是json-decode-pipeline.

谢谢

json elm

4
推荐指数
1
解决办法
42
查看次数

如何在内置一些功能的ckeditor小部件上添加按钮?

我修改了此小部件教程中给出的simplebox小部件,以便在悬停时包含这三个按钮.

带有一些按钮的ckeditor小部件

我想在这些按钮中启用一些功能,即在他们的点击事件上运行一些javascript.例如,使用删除按钮,窗口小部件实例将被销毁(通过doc查找我发现了widget的destroy方法).但是我应该如何在这个按钮的click事件上附加该方法.

还想知道,如何在CKEditor中停止事件冒泡(event.stopPropagation)以阻止在click事件上发生更多事件.

任何建议都会有所帮助.长期以来一直在努力奋斗.

是的,这位编辑摇滚.:)

ckeditor

3
推荐指数
1
解决办法
943
查看次数