All Projects → Mosongxing → chat_project

Mosongxing / chat_project

Licence: MIT license
基于GatewayWorker+Vue所写的聊天室

Programming Languages

Vue
7211 projects
PHP
23972 projects - #3 most used programming language
javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to chat project

dnmp
docker-compose部署LNMP环境 Nginx/Openresty、MySQL(5.7、8.0、8.1)、PHP7.4(8.0、5.6)、Redis5.0、PHPMyAdmin、Xdebug、RabbitMQ、Nacos
Stars: ✭ 138 (+626.32%)
Mutual labels:  workerman
Phpsocket.io
A server side alternative implementation of socket.io in PHP based on workerman.
Stars: ✭ 2,026 (+10563.16%)
Mutual labels:  workerman
Workerman Todpole
HTML5+WebSocket+PHP(Workerman) , rumpetroll server writen using php
Stars: ✭ 1,751 (+9115.79%)
Mutual labels:  workerman
Mix
☄️ PHP CLI mode development framework, supports Swoole, WorkerMan, FPM, CLI-Server / PHP 命令行模式开发框架,支持 Swoole、WorkerMan、FPM、CLI-Server
Stars: ✭ 1,753 (+9126.32%)
Mutual labels:  workerman
iyov
Web proxy for http(s) for developers to analyze data between client and servers based on workerman, especailly for app developers.
Stars: ✭ 27 (+42.11%)
Mutual labels:  workerman
larvelworkerman
Laravel5.5 + dingo + jwt + workerman 具有聊天的框架. 接口采用dingo标准的RESTFUL模式,JWT用于token验证,workerman用于聊天工具开发只要是websocket
Stars: ✭ 20 (+5.26%)
Mutual labels:  workerman
Navigation
一款基于 Workerman 的 PHP Web 开发框架。
Stars: ✭ 20 (+5.26%)
Mutual labels:  workerman
wind-framework
Pure PHP Coroutine Framework based on Workerman and Amphp.
Stars: ✭ 41 (+115.79%)
Mutual labels:  workerman
cpms-php
使用thinkPHP5.0开发的后台简洁管理系统脚手架,cpms-php是采用TP5.0开发的一个简单的后台脚手架管理系统(包括前台展示和后台管理部分)。主要模块有:用户登入验证、后台管理员增删改查、文章发布、RBAC权限管理、socketIO在线即时聊天
Stars: ✭ 20 (+5.26%)
Mutual labels:  workerman
static-php-cli
Build single static PHP binary in linux, build with PHP project together, with Swoole and other popular extensions included.
Stars: ✭ 129 (+578.95%)
Mutual labels:  workerman
NovelSpider
抓取小说
Stars: ✭ 43 (+126.32%)
Mutual labels:  workerman
SuperXSS
Make XSS Great Again
Stars: ✭ 57 (+200%)
Mutual labels:  workerman
chat-here
A responsive chat room based on Laravel5.4 and GatewayWorker3.0. (基于 Laravel 5.4 和 GatewayWorker 3.0 的响应式聊天室。)
Stars: ✭ 24 (+26.32%)
Mutual labels:  gatewayworker

前言

本项目是出于兴趣而写,网上虽有相应的项目,但是大部分都是PC端,可是我想写一个移动端的项目。由于能力有限,不懂IOS和Android开发,但是又会一点点H5知识,所以查了一下资料,发现基于Vue来写一个前端页面也挺不错,主要是Vue容易上手。工作期间利用零散时间把Vue的文档看了一遍,在网上找了一个项目学习,最终前端页面就变成了现在所写的样子。

后台本来想用Express或Koa来写,但我是PHP工程师,做这种事情太不符合我的信仰。于是就只好在Workerman或Swoole上选一个框架来开发,考虑到要快速开发,就选用了纯PHP写的Workerman。

项目从设计到开发完这个小demo,一共用了2周,都是在下班后利用零散时间开发,期间经历了好多的坑,也意识到了自己的不足。如果项目有什么不妥请指出,也可以联系我,QQ:287727982。

前端项目参考:https://github.com/secreter/websocket_chat

版本

version:1.1.0

技术栈

  • Workerman
  • GatewayWorker
  • Redis
  • Mysql
  • Vue
  • Vue-Router
  • Webpack

其他版本功能

1.0.0

本期版本功能

  • 修改个人资料
  • 发送图片
  • 注册账户(已完成)
  • 下拉加载消息

下期版本功能

  • 消息搜索

启动项目前

导入SQL文件

导入根目录下的chat.sql到Mysql

修改配置文件

根据自己的实际情况修改如下配置文件:

chat_server/config/dev_db.php
chat_server/config/dev_redis.php
chat_server/config/dev_static.php

由于Socket.io与GatewayWorker不兼容,所以在Vue中采用了原生的Websocket来连接后端,于是你还要配置:

chat_client/src/api/client.js

里面的GatewayWorker地址WebSocket("ws://192.168.1.245:7272")

启动项目

Vue

进入chat_client

npm install
npm run dev 开发模式
npm run build

如果是开发模式下,打开localhost:8080就可以进入登陆页面

GatewayWorker(Linux环境)

进入chat_server

php start.php start dev 终端模式
php start.php start -d dev 后台模式

现在有'dev', 'qa','stage', 'prod'四个环境,不过我只写了dev的配置文件,如果你想切换其它环境,请添加相应的配置文件,比如要上生产环境,则添加

chat_server/config/prod_db.php
chat_server/config/prod_redis.php
chat_server/config/prod_static.php

三个配置文件

效果图

登陆界面:

注册界面:

聊天界面:

群信息界面:

项目设计图(待写)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].