sessionID是如何在客户端和服务器端传递的?
我现在的理解是:
一开始服务器端通过接口把sessionid传给客户端,客户端(android)浏览整个应用都通过url的方式带着sessionid与服务器进行交互。
问题是:
服务器端是用php做的,客户端发送请求时,我获取它的sessionid,怎么来判断这个id是否有效,是否已经过期了呢?
查到有人会在数据库里生成一堆的sessionid,并记录它们的使用状态。然后客户端发送请求时,就会去检查这个sessionid是否有效,如果无效,就会给其分配一个没有用过的sessionid.
请大牛们指点迷津。到底该如何实现客户端和服务器端传递sessionid,谢谢。
回复讨论(解决方案)
sessionid 是在服务器端验证的 你要在客户端传递是个什么意思?如果你非要带个sessionid 可以使用$HTTP_SESSION_VARS 传递给客户端.其实还不如自己实现一个加密串呢...
找到传智播客PHP视频教程117讲 session原理笔记,有关sessionid的工作机制是这么描述的,希望对你有帮助:
当浏览器A去访问一个有打开了session机制的php1文件时,session文件会创建,同时会将该session文件的id以cookie的形式发送给浏览器(session文件的id号可以session_id()这个函数来获得)。当浏览器A没有关闭(会话没有结束),反而去访问另一个也开启session机制的php2文件时,那么该sessionid也会跟着http协议从浏览器发送到服务器上,访问到之前创建的session文件,将相关内存也保存到该session文件内。
当我们开启了另一个浏览器B,也就是创建了另一个会话,那么该浏览器访问一个带有开启session机制的网页,会另外生成一个新的session文件,并将该session文件id号以cookie的形式传递给浏览器B.
可以这么理解,一个会话对应一个sessionid。
希望能够帮助到你!
http://fushidian.blog.163.com/blog/static/567656992010102522713846/

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Alipay PHP...

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

Session hijacking can be achieved through the following steps: 1. Obtain the session ID, 2. Use the session ID, 3. Keep the session active. The methods to prevent session hijacking in PHP include: 1. Use the session_regenerate_id() function to regenerate the session ID, 2. Store session data through the database, 3. Ensure that all session data is transmitted through HTTPS.

The application of SOLID principle in PHP development includes: 1. Single responsibility principle (SRP): Each class is responsible for only one function. 2. Open and close principle (OCP): Changes are achieved through extension rather than modification. 3. Lisch's Substitution Principle (LSP): Subclasses can replace base classes without affecting program accuracy. 4. Interface isolation principle (ISP): Use fine-grained interfaces to avoid dependencies and unused methods. 5. Dependency inversion principle (DIP): High and low-level modules rely on abstraction and are implemented through dependency injection.

How to debug CLI mode in PHPStorm? When developing with PHPStorm, sometimes we need to debug PHP in command line interface (CLI) mode...

How to automatically set the permissions of unixsocket after the system restarts. Every time the system restarts, we need to execute the following command to modify the permissions of unixsocket: sudo...

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

Sending JSON data using PHP's cURL library In PHP development, it is often necessary to interact with external APIs. One of the common ways is to use cURL library to send POST�...
