Workerman sendiri tidak semestinya mengendalikan pengesahan pengguna atau mengikat pengguna ke sambungan. Ia adalah rangka kerja yang didorong oleh peristiwa yang sangat efisien, yang memberi tumpuan kepada pengendalian sambungan dan menguruskan I/O. Pengesahan Pengguna dan Pengurusan Sesi adalah tanggungjawab yang anda perlukan untuk melaksanakan di atas Workerman. Ini biasanya melibatkan menggunakan sistem pengesahan berasingan (seperti pangkalan data atau perkhidmatan luaran) dan mengintegrasikannya dengan aplikasi Workerman anda. Anda perlu merancang protokol untuk permohonan anda untuk berkomunikasi dengan sistem pengesahan, sering melibatkan pertukaran kelayakan (nama pengguna/kata laluan, token, dll.) Semasa jabat tangan sambungan atau permintaan berikutnya. Pelayan kemudian menggunakan hasil pengesahan untuk mengaitkan ID pengguna atau maklumat mengenal pasti lain dengan sambungan. Ini boleh dilakukan dengan menyimpan ID pengguna dalam harta khusus sambungan dalam objek sambungan Workerman. sebagai:
Nama pengguna/kata laluan:
mudah tetapi memerlukan penyimpanan dan hash yang selamat. JWT (JSON Web Token) adalah pilihan yang popular. Perkhidmatan ini akan berinteraksi dengan kedai pengesahan anda (pangkalan data, LDAP, dan lain -lain). Permohonan Workerman anda harus menerima kelayakan ini, meneruskannya ke perkhidmatan pengesahan anda, dan menerima respons pengesahan. Ini membolehkan anda mengenal pasti pengguna untuk permintaan berikutnya.// ... Workerman connection handling ... $connection->onMessage = function($connection, $data) { // ... Receive username and password from client ... // Authenticate the user $user = authenticateUser($username, $password); // Calls your authentication service if ($user) { // Generate session ID $sessionId = generateSessionId(); $connection->sessionId = $sessionId; // Store session ID in the connection object $connection->send("Authentication successful!"); // ... handle further requests using $connection->sessionId ... } else { $connection->close(); // Close connection on failed authentication } }; function authenticateUser($username, $password) { // ... Your authentication logic here, interacting with a database or other service ... }
Atas ialah kandungan terperinci Cara Mengikat Tutorial Pengguna Pengguna Pengguna Workerman. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!