Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我怎样才能解决这个袜子问题_Php_Node.js_Socket.io - Fatal编程技术网

Php 我怎样才能解决这个袜子问题

Php 我怎样才能解决这个袜子问题,php,node.js,socket.io,Php,Node.js,Socket.io,结果: const socket = require('socket.io'), express = require('express'), https = require('https'), http = require('http'), logger = require('winston'); const app = express(); const http_server = http.createServer(app).listen(3

结果:

const socket = require('socket.io'),
      express = require('express'),
      https = require('https'),
      http = require('http'),
      logger = require('winston');

const app = express();

const http_server = http.createServer(app).listen(3001);

logger.info('server running port 3001');

function emitNewOrder(http_server) {
    var io = socket.listen(http_server);

    io.sockets.on('connection',function (socket) {

        socket.on('new_order', function (data) {
            io.emit("new_order", data);
        });

    });
}

emitNewOrder(http_server);
<?php

include ("vendor/autoload.php");

use ElephantIO\Client;
use ElephantIO\Engine\SocketIO\Version1X;

$version = new Version1X("http://localhost:3001");

$client = new Client($version);

$client->initialize();

$client->emit("new_order", ["test1"=>"test1","test2"=>"test2"]);

$client->close();
致命错误:
Uncaught UnexpectedValueException:服务器返回了意外值。
预期为“HTTP/1.1 101”,实际为“HTTP/1.1 400”
在C:\xampp\htdocs\vendor\wisembly\elephant.io\src\Engine\SocketIO\Version1X.php:266中
堆栈跟踪:
#0 C:\xampp\htdocs\vendor\wisembly\elephant.io\src\Engine\SocketIO\Version1X.php(73):ElephantIO\Engine\SocketIO\Version1X->upgradeTransport()
#1 C:\xampp\htdocs\vendor\wisembly\elephant.io\src\Client.php(60):ElephantIO\Engine\SocketIO\Version1X->connect()
#2c:\xampp\htdocs\emit.php(12):ElephantIO\Client->initialize()
#在第266行的C:\xampp\htdocs\vendor\wisembly\elephant.io\src\Engine\SocketIO\Version1X.php中抛出3{main}
server.js:

const socket = require('socket.io'),
      express = require('express'),
      https = require('https'),
      http = require('http'),
      logger = require('winston');

const app = express();

const http_server = http.createServer(app).listen(3001);

logger.info('server running port 3001');

function emitNewOrder(http_server) {
    var io = socket.listen(http_server);

    io.sockets.on('connection',function (socket) {

        socket.on('new_order', function (data) {
            io.emit("new_order", data);
        });

    });
}

emitNewOrder(http_server);
<?php

include ("vendor/autoload.php");

use ElephantIO\Client;
use ElephantIO\Engine\SocketIO\Version1X;

$version = new Version1X("http://localhost:3001");

$client = new Client($version);

$client->initialize();

$client->emit("new_order", ["test1"=>"test1","test2"=>"test2"]);

$client->close();
emit.php:

const socket = require('socket.io'),
      express = require('express'),
      https = require('https'),
      http = require('http'),
      logger = require('winston');

const app = express();

const http_server = http.createServer(app).listen(3001);

logger.info('server running port 3001');

function emitNewOrder(http_server) {
    var io = socket.listen(http_server);

    io.sockets.on('connection',function (socket) {

        socket.on('new_order', function (data) {
            io.emit("new_order", data);
        });

    });
}

emitNewOrder(http_server);
<?php

include ("vendor/autoload.php");

use ElephantIO\Client;
use ElephantIO\Engine\SocketIO\Version1X;

$version = new Version1X("http://localhost:3001");

$client = new Client($version);

$client->initialize();

$client->emit("new_order", ["test1"=>"test1","test2"=>"test2"]);

$client->close();
改用Version2X

<?php

include ("vendor/autoload.php");

use ElephantIO\Client;
use ElephantIO\Engine\SocketIO\Version2X;

$client = new Client(new Version2X('http://localhost:3001'));

$client->initialize();
$client->emit("new_order", ["test1"=>"test1","test2"=>"test2"]);
$client->close();

改用Version2X

<?php

include ("vendor/autoload.php");

use ElephantIO\Client;
use ElephantIO\Engine\SocketIO\Version2X;

$client = new Client(new Version2X('http://localhost:3001'));

$client->initialize();
$client->emit("new_order", ["test1"=>"test1","test2"=>"test2"]);
$client->close();