簡體   English   中英

不使用socket.io的簡單Node.js聊天程序

[英]Simple Node.js chat program NOT using socket.io

我正在嘗試學習Node並構建一個簡單的聊天應用程序。 似乎每個人都使用socket.io。 我想了解如何使用get和post在更基礎的級別上執行此操作。

基本上,我要做的就是擁有一個接受輸入並將其重新發布到該表單下方的表單,以供所有人查看。

這是我到目前為止的內容:

//Requirements
var express = require('express'); 
var app = express(); 

//GET
app.get('/', function (req, res) {
 // res.send('Hello World!');
        var response =
          "<HEAD>"+
                  "<title>Chat</title>\n"+
          "</HEAD>\n"+
          "<BODY>\n"+
                    "<FORM action=\"/\" method=\"get\">\n" +
                            "<P>\n" +
                                   "Enter a phrase: <INPUT type=\"text\" name=\"phrase\"><BR>\n" +
                                   "<INPUT type=\"submit\" value=\"Send\">\n" +
                           "</P>\n" +
                   "</FORM>\n" +
          "<P>phrase</P>\n"+
          "</BODY>";
        var phrase = req.query.phrase;
        if(!phrase){
                res.send(response);
        }else{
                res.send(response);
                res.send(phrase);
        }
});

//For testing
app.get('/test', function(req, res){
        res.send('I am a robot');
        console.log('told visiter I am a robot');
});

//Run the app
var server = app.listen(8080, function () {
  var host = server.address().address;
  var port = server.address().port;

  console.log('App listening at http://%s:%s', host, port);
});

我一直在嘗試很多事情,但是我很沮喪。

您是否聽說過消息傳遞后端jxm.io

它與JXcoreNode.JS的開源fork)一起使用。 JXM本身是一個開源項目,您可以在github: jxm上找到它。

它確實快速有效,您可以查看一些教程 例如,以下是最少的代碼,您需要在服務器端運行:

var server = require('jxm');
server.setApplication("Hello World", "/helloworld", "STANDARD-KEY-CHANGE-THIS");
server.addJSMethod("serverMethod", function (env, params) {
   server.sendCallBack(env, params + " World!");
});
server.start(); 

客戶端的部分可以在這里找到: 瀏覽器客戶端(JavaScript)

JXM還支持Java客戶端(在android上運行)和節點客戶端。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM