<?php
$server = new Swoole\Server("0.0.0.0", 9503);
$server->on('connect', function ($server, $fd) {
echo "connection open: {$fd}\n";
});
$server->on('receive', function ($server, $fd, $reactor_id, $data) {
$response = new Response();
$_htmlstr = "hello world 你好 朋友";
$response->withHeader('Content-Type', 'text/html;charset=utf-8')
->withHeader('Content-Length', strlen($_htmlstr))
->withBody($_htmlstr);
$server->send($fd, $response->getPackage());
$server->close($fd);
});
$server->on('close', function ($server, $fd) {
echo "connection close: {$fd}\n";
});
$server->start();
/**
* 用来简单组装 header 和 body
* Class Response
*/
class Response {
private $header = "HTTP/1.1 200 OK\r\n";
private $body = '';
public function withHeader($name, $value) {
$name = strtolower($name);
if ($name == 'content-type') {
$this->header .= "Content-Type: {$value}\r\n";
} elseif ($name == 'content-length') {
$this->header .= "Content-Length: " . $value . "\r\n";
}
return $this;
}
public function withBody($body) {
$this->body .= $body;
return $this;
}
/**
* 获取组装好的 http 报文
* @return string
*/
public function getPackage() {
return $this->header ."\r\n" . $this->body;
}
}
网友回复
如何让ai帮我自动在小红书或抖音上自动根据需求截流与潜在客户聊天拉客?
如果用go编写一个在virtualbox中启动的简单操作系统?
go如何搭建一个零信任网络?
如何用python实现一个公网代理访问软件?
如何用go实现一个公网代理访问软件?
如何用python实现一个内网穿透打洞程序,实现内网的80端口暴露到公网上可以访问?
如何用go实现一个内网穿透打洞程序,实现内网的80端口暴露到公网上可以访问?
何为Shadowsocks 代理?
python如何实现类似php的opendir目录相互隔离的fastcgi多租户虚拟空间?
nodejs如何实现类似php的opendir目录相互隔离的fastcgi多租户虚拟空间?


