一、HTTP服务HTTP服务器先看Swoole官方文档入门指南->快速入门->创建一个Web服务器,运行一次文档的示例代码,然后看效果:http_server.phpon('request',function($request,$response){var_dump($request->get,$request->post);//cookie测试//$response->cookie('name','百合',time()+3600);$response->header("Content-Type","text/html;charset=utf-8");$response->end("
你好Swoole.#".rand(1000,9999)."
");});$http->start();打开一个窗口,访问服务:root@5ee6bfcc1310:~#curlhttp://127.0.0.1:9501
HelloSwoole。#9147
root@5ee6bfcc1310:~#curlhttp://127.0.0.1:9501?act=all
你好Swoole。#4674
root@5ee6bfcc1310:~#Http服务器只需要关注请求响应,所以只需要监听一个onRequest事件即可。当有新的Http请求进来时触发该事件。事件回调函数有2个参数,一个是$request对象,里面包含了请求的相关信息,比如GET/POST请求的数据。另一个是响应对象,可以通过操作响应对象来完成对请求的响应。$response->end()方法表示输出一段HTML内容,结束请求。0.0.0.0表示监听所有IP地址。一个服务器可能同时有多个IP,比如127.0.0.1本机环回IP,192.168.1.100局域网IP,210.127.20.2外网IP,这里也可以指定单个IP9501监听,如果端口被占用,则程序将抛出致命错误并中断执行。当静态内容为test.html等静态页面时,不遵循php逻辑,这里需要做特殊配置set(['enable_static_handle'=>true,'document_root'=>"/work/study/code/swoole/static"//存放静态资源路径]);$http->on('request',function($request,$response){var_dump($request->get,$request->post);//cookie测试//$response->cookie('name','百合',time()+3600);$response->header("Content-Type","text/html;charset=utf-8");$response->end("
你好Swoole.#".rand(1000,9999)."
");});$http->start();