मैं वर्तमान में डेस्कटॉप ऐप के लिए प्रमाणीकरण सर्वर बनाने के लिए जावा के साथ खेल रहा हूं और अब तक मैं क्लाइंट और सर्वर दोनों को शुरुआत के लिए चैट सर्वर/क्लाइंट की तरह संवाद करने में सक्षम हूं।सॉकेट प्रमाणीकरण सर्वर?
मुझे एहसास है कि मुझे केवल इसका एक छोटा सा हिस्सा मिल रहा है और सीखने और सीखने के लिए कई चीजें हैं लेकिन अभी इस चरण में मैं सोच रहा हूं कि प्रमाणीकरण कैसे किया जाता है।
उदाहरण के लिए, इस सर्वर कोड है:
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class LoginServer
{
public static void main(String[] args) throws Exception {
int port = 7000;
int id = 1;
ServerSocket loginserver = null;
try
{
loginserver = new ServerSocket(port);
System.out.println("LoginServer started...");
}
catch (IOException e) {
System.out.println("Could not listen on port: " + port);
System.exit(-1);
}
while (true)
{
Socket clientSocket = loginserver.accept();
ClientServiceThread cliThread = new ClientServiceThread(clientSocket, id++);
cliThread.start();
}
}
}
class ClientServiceThread extends Thread
{
Socket clientSocket;
int clientID = -1;
boolean running = true;
ClientServiceThread(Socket s, int i)
{
clientSocket = s;
clientID = i;
}
public void run()
{
System.out.println("Accepted Client : ID - " + clientID + " : Address - " + clientSocket.getInetAddress().getHostName());
try
{
BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
PrintWriter out = new PrintWriter(new OutputStreamWriter(clientSocket.getOutputStream()));
while (running)
{
String clientCommand = in.readLine();
System.out.println("Client Says :" + clientCommand);
if (clientCommand.equalsIgnoreCase("quit"))
{
running = false;
System.out.print("Stopping client thread for client : " + clientID);
}
else
{
out.println(clientCommand);
out.flush();
}
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
आप देख सकते हैं, मैं पढ़ा करते हैं ग्राहक क्या भेजता है और कंसोल के लिए यह उत्पादन के साथ-साथ जाँच अगर ग्राहक भेजा है एक से बाहर निकलें या आदेश नहीं
मैं क्या सोच रहा हूँ कि कैसे मैं ताकि ग्राहक केवल कनेक्ट कर सकते हैं यह करने के लिए उपयोगकर्ता और पासवर्ड भेजा गया था, तो क्या करना होगा है?
या मैं हमेशा प्रारंभिक कनेक्शन और वहाँ से प्राप्त करना चाहिए प्रमाणीकरण जानकारी प्राप्त करते हैं और उस में मान लीजिए कि 3 सेकंड उन्हें डिस्कनेक्ट जाने भेजा अगर ग्राहक नहीं है?
नए कनेक्शन प्राप्त करने और को इसके साथ उपयोगकर्ताओं को प्रमाणीकृत करने का सही तरीका क्या है?
आपके उत्तर के लिए धन्यवाद मुझे खुशी है कि मैं बहुत दूर नहीं था, मैंने प्रमाणीकरण सॉकेट सिस्टम के लिए सीधे किसी भी स्रोत या उदाहरणों के लिए चारों ओर देखने की कोशिश की लेकिन मुझे कोई उदाहरण नहीं मिला और इस पर मेरी सहायता करनी होगी, क्या आप मुझे एक छोटा कोड नमूना देने में सक्षम हो सकता है शायद मुझे किसी भी लिंक पर निर्देशित करें जो कि लॉगिन मशीन के लिए राज्य मशीन के संबंध में जांच के लायक हो सकता है या इसी तरह से बाहर निकलने में मदद कर सकता है? धन्यवाद आप एक बार फिर – Guapo
वास्तव में समय लेने के लिए सराहना करते हैं यह वास्तव में मेरी मदद करता है;) – Guapo