Ich arbeite an meinem eigenen Nicht-HTTP-Server Apache, aber ich komme schließlich zu der Stelle war ich brauche Variablen zu bekommen aus einem Stringjava Wie in einer HTTP-Anforderung Zeichen nach Zeichen in einer Zeichenfolge erhalten
zu tun, dass ich eine Methode erstellt namens GetArgument (String GetCmd, String arg)
GetCmd = die GET-Befehl (zB GET /blockip?ip=192.168.1.99)
arg = das Argument, dass Sie Informationen brauchen über (zum Beispiel 'IP' und das muss die IP oben zurückgeben)
zusätzliche Argumente in einem Befehl GET sind gespaltet von &
Der aktuelle Code für die GetArgument Methode ist:
private static String GetArgument(String GetCmd, String arg) {
String args[] = GetCmd.split("?")[1].split("&");
for(int i = 0; i < args.length; i++){
if (args[i].startsWith(arg + "=")){
// Argument found
}
}
return null;
}
Aber wie kann ich das tun?
Ich würde zu diesem Zweck eine HashMap verwenden. Sie können es einmal erstellen, wenn Sie die URL der Anfrage verarbeiten, und dann verwenden, um Parameter von Ihrer Anwendung nach Bedarf abzufragen. Beachten Sie auch, dass Ihre URLs möglicherweise codierte Zeichen enthalten. Zum Beispiel wird ein Leerzeichen zu "% 20". Sie müssen diese richtig entschlüsseln. –
Bartvbl