对于会话的认识

会话跟踪是web程序中常用的技术,用来跟踪用户的整个会话,常用的会话跟踪技术是Cookie与Session 。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。

cookie机制:一个用户的所有请求操作都应该属于同一个会话

web应用程序:是使用HTTP协议传输数据。HTTP协议是无状态的协议,一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接,这就是意味着服务器无法从连接上跟踪会话

cookie工作原理: 给客户端们办法一个通行证,每人一个,无论谁访问都必须携带自己通行证,这样服务器就能从通行证上确认客户身份了

cookie
1.创建cooike
bool setcooike(string $name[,string $value[,int $expire = 0[,string $path[,string $domain[,bool $secure =false[,bool $httponly=false]]]]]])

2.读取cooike
$_COOKIE[key]

3.删除cooike
setcooike(key,value,time()-1);

cookie和session的区别
1.cookie数据存放在客户的浏览器上,session数据放在服务器上

2.cooike不是很安全,别人可以分析存放在本地的cooike并进行cooike欺骗考虑到安全应当使用session

3.session会在一定时间内保存在服务器上,当访问增多,会比较占用你的服务器性能,考虑减轻服务器性能方面应该使用cooike

4.单个cooike保存的数据不能超过4k,很多浏览器都限制一个站点最多保存20个cooike

5.将登陆信息等重要信息存放在session其他信息如果需要保留可以存在cooike中

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的Vue组件,实现了一个带有会话列表并且可以选择用户的微信聊天页。组件包括一个会话列表和一个聊天窗口,用户可以点击会话列表中的用户头像进入聊天窗口,同时会话列表中会显示未读消息的数量。 ```html <template> <div class="chat-container"> <div class="session-list"> <div v-for="(user, index) in userList" :key="index" class="session-item" :class="{active: activeIndex === index}" @click="selectUser(index)"> <img :src="user.avatar" alt="user-avatar"> <div class="session-info"> <div class="user-name">{{user.name}}</div> <div class="last-message">{{user.lastMessage}}</div> </div> <div class="unread-count" v-if="user.unreadCount > 0">{{user.unreadCount}}</div> </div> </div> <div class="chat-window"> <div v-if="selectedUser"> <div class="header"> <img :src="selectedUser.avatar" alt="selected-user-avatar"> <div class="user-name">{{selectedUser.name}}</div> </div> <div class="message-list"> <div v-for="(message, index) in selectedUser.messages" :key="index" class="message-item"> <div class="user-avatar"> <img :src="message.avatar" alt="user-avatar"> </div> <div class="message-content"> <div class="user-name">{{message.name}}</div> <div class="message-text">{{message.text}}</div> <div class="message-time">{{message.time}}</div> </div> </div> </div> <div class="message-input"> <input type="text" placeholder="请输入消息" v-model="newMessage"> <button @click="sendMessage">发送</button> </div> </div> <div v-else class="empty-chat">请选择一个用户开始聊天</div> </div> </div> </template> <script> export default { data() { return { userList: [ { name: '用户1', avatar: 'user1.png', lastMessage: '这是用户1的最后一条消息', messages: [ { name: '用户1', avatar: 'user1.png', text: '你好', time: '2022-01-01 10:00:00' }, { name: '我', avatar: 'my-avatar.png', text: '你好,很高兴认识你', time: '2022-01-01 10:01:00' } ], unreadCount: 1 }, { name: '用户2', avatar: 'user2.png', lastMessage: '这是用户2的最后一条消息', messages: [ { name: '用户2', avatar: 'user2.png', text: '在干什么呢', time: '2022-01-01 11:00:00' }, { name: '我', avatar: 'my-avatar.png', text: '我在写代码,你呢', time: '202

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值