小编Sco*_*ott的帖子

MQTT与XMPP我应该选择哪个?

概观

我在客户端(Android手机)和服务器(Windows Server)之间来回发送消息.通过TCP使用持久连接,哪种协议将是最佳解决方案.我正在考虑性能,可扩展性,消息大小和电池寿命.消息必须按顺序到达目的地,不能重复.

MQTT

这似乎是更好的解决方案,但似乎很少有用户的大型实现示例.我不确定是否可以将其集成到Windows服务器中,或者是否必须是另一个应用程序或服务器正在运行.最后,似乎总体上缺乏有关它的信息.

XMPP

这似乎有很多实现,例子,甚至一本书:).然而,主要目的似乎是即时通讯客户端和谷歌谈话之类的东西.这是服务器和客户端之间消息传递的最佳解决方案吗?我知道目前XMPP主要用于客户端到服务器到客户端架构.

如果我错了请纠正我,并提前感谢任何指导.

c# java android xmpp mqtt

36
推荐指数
3
解决办法
3万
查看次数

将自定义实例方法动态添加到猫鼬模式

有没有办法在“导出”之后将自定义实例方法添加到猫鼬模式。

例如,如果我有一个架构:

module.exports = function(app, db, config) {

  var MySchema = new Schema({ name: String });
  MySchema.methods.doIt = function() { console.log("I DID IT!"); }
  db.model("MySchema", MySchema);
}
Run Code Online (Sandbox Code Playgroud)

然后,我想在将新方法加载到 mongoose 模型对象后动态地向模式添加新方法。

MySchema = db.model('MySchema');
var obj = new MySchema({name: "robocop"});

var myNewMethod = function() { console.log(this.name); }

// Do Magic here to add the myNewMethod to object.

obj.myNewMethod();
Run Code Online (Sandbox Code Playgroud)

你有没有尝试过?

我已经尝试将它添加到 mongoose 模型对象,但是这会产生错误,指出模式对象没有我刚刚添加的方法。

MySchema = db.model('MySchema');
MySchema.schema.methods.myNewMethod = function() { console.log(this.name); }
db.model('MySchema', MySchema);

console.log(MySchema.schema.methods); // This shows my method …
Run Code Online (Sandbox Code Playgroud)

javascript mongoose database-schema node.js

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

MongooseJS没有正确保存数组

我想,我在使用mongoosejs时遇到了麻烦.我试图保持一个特定大小为2的对象数组.当调用此函数时,它会向数组添加一个项目,并在必要时将其缩小.但是,当我保存数组时,大小不会减少到2.遵循代码和注释.感谢您的任何帮助,您可以提供.

 user.location.push(req.body);  //Add a new object to the array.

    if(user.location.length > 2)  //If the array is larger than 2
      user.location.splice(0,1);   //Remove the first item

    console.log(user.location);  //This outputs exactly what I would expect.

    user.save(function(err, updatedUser){
      if(err)
        next(new Error('Could not save the updated user.'));
      else { 
        res.send(updatedUser);  //This outputs the array as if it was never spliced with a size greater than 2.
      }
    });
Run Code Online (Sandbox Code Playgroud)

javascript mongoose node.js

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

将JSON服务器响应解析为JSON数组

我正在使用Java来解析来自服务器的JSON响应.我的最终目标是将结果中的数据放入数组中.目前我正在使用它来尝试获得结果:

JSONArray jArray = myResponse.getJSONArray("results");
Run Code Online (Sandbox Code Playgroud)

此代码失败,因为它正在查找对象数组,而不是字符串数组:

org.json.JSONException: Value blah at 0 of type java.lang.String cannot be converted to JSONObject
Run Code Online (Sandbox Code Playgroud)

这是我服务器的JSON响应:

{
  status: "OK",
  results: [
    "blah",
    "bleh",
    "blah"
  ]
}
Run Code Online (Sandbox Code Playgroud)

有没有一种简单的方法可以将"结果"值转换为数组?或者我应该编写自己的解析器.

谢谢

----------更新----------

看起来我的问题实际上发生在其他地方,而不是JSON属性"results"被转换为JSONArray的地方.

抱歉,感谢您的回答,他们帮助我意识到我在找错了地方.

java arrays json

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

标签 统计

java ×2

javascript ×2

mongoose ×2

node.js ×2

android ×1

arrays ×1

c# ×1

database-schema ×1

json ×1

mqtt ×1

xmpp ×1