【问题标题】:How to connect to friendly URL socket?如何连接到友好的 URL 套接字?
【发布时间】:2019-09-05 15:00:17
【问题描述】:

我习惯于在 JavaScript 上使用 HTML5 websockets,你可以通过这样的指令进行连接:

var socket = new WebSocket("ws://localhost:8000/socket/server/socketEndpoint");

我需要使用 PHP 进行类似的连接。根据文档,我可以使用“socket_connect”,但我需要一个 IP 地址和一个端口。我有端口,但在 URL 内,我不知道如何在 socket_connect 中使用它。

有什么方法可以用 PHP 连接到那个 URL?我需要另一个指令吗?谢谢大家。

【问题讨论】:

  • 为什么你需要一个低级的TCP socket 连接(w/实现 HTTP、升级:等等),而不是在 PHP 中使用 WebSocket 客户端?

标签: javascript php sockets


【解决方案1】:

您可以为此使用 Pawl(PHP 中的异步 WebSocket 客户端)。

您可以通过composer安装它:composer require ratchet/pawl

使用您的连接详细信息,结果将是:

<?php

require __DIR__.'/vendor/autoload.php';

\Ratchet\Client\connect('ws://localhost:8000/socket/server/socketEndpoint')->then(function($conn) {
    $conn->on('message', function($msg) use ($conn) {
        echo "Received: {$msg}\n";
        $conn->close();
    });
    $conn->send('Hello World!');
}, function ($e) {
    echo "Could not connect: {$e->getMessage()}\n";
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多