2017-11-18 3 views
0

Eigentlich bin ich ein Student und ein Anfänger Ich mache eine Online-Wunsch-Webseite als Test-Projekt Und ich möchte den Namen des Absenders in html Ich habe erfolgreich damit abgeschlossen, aber ich möchte erhalten die Parameter Text URL-Zeichenfolge Wie kann ich es tunWie bekomme ich URL-String-Parameter

Adressmuster Meine Website ist wie www.subdomain.domain.tld/page /? n = (sender_encoded_name)

Deshalb möchte ich Daten holen aus n Parameter der URL und dekodiere sie.

hatte ich eine Menge Online bezüglich dieser gesucht und bekam verwirrt So helfen Sie mir bitte mit dem eigentlichen Verfahren

ich diesen Code versucht, mit,

var reqParam = URLDecoder.decode(reqParam, "UTF-8") 

aber ich bin ein wenig verwirrt Sie bitte helfen mich wie nötig ...

+0

Sie 'Abfrage string' genannt werden. Duplicate von: https://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript – ceferrari

+0

Ich sah ich vor, aber ich bin verwirrt, da der Code mehrere Abfragezeichenfolgen verwendet Bitte helfen Sie mir – user8936954

+3

Sie haben mehrere Sprachen markiert. Beschränken Sie es auf die Hilfe, in der Sie Hilfe benötigen. – Vasan

Antwort

0

Sie können es versuchen, für immer Abfrageparameter Werte-

var urlObj = new URL("http://www.subdomain.domain.tld/page/?n=a%20b%20c&m=a%20b%20c%20d"); 
var params = urlObj.searchParams; 
params.get('n'); 
params.get('m'); 
-1

Ich denke, finden Sie interessante Seite finden:

https://api.jquery.com/jquery.get/

Ein Beispiel, das vielleicht haben Sie in PHP helfen:

echo 'Hello ' . htmlspecialchars($_GET['name' ]) . '!'; 

Stellen Sie sich vor, dass Ihre URL http://example.com/?name=Andrew

ist dann Sie sehen etwas wie: Hello Andrew!

0

In Java können Sie Pattern Matching mit einem regulären Ausdruck verwenden, um die gewünschten Daten aus der URL-String (oder eine beliebige Zeichenfolge für diese Angelegenheit) zu sammeln:

String urlString = "www.subdomain.domain.tld/page/?n=(sender_encoded_name)"; 

List<String> list = new ArrayList<>(); 
String regexString = "\\Q?n=(\\E(?s)(.*?)\\Q)\\E"; 
Pattern pattern = Pattern.compile("(?iu)" + regexString); 
Matcher matcher = pattern.matcher(urlString); 
while (matcher.find()) { 
    String match = matcher.group(1).trim(); 
    list.add(match); 
} 

// Display all items found matching the supplied pattern 
for(int i = 0; i < list.size(); i++) { 
    System.out.println(list.get(i)); 
} 

Konsole ausgegeben:

sender_encoded_name 

zu setzen dies in einem Verfahren könnten Sie haben:

public List<String> getEncodedName(String urlString) { 
    List<String> list = new ArrayList<>(); 
    String regexString = "\\Q?n=(\\E(?s)(.*?)\\Q)\\E"; 
    Pattern pattern = Pattern.compile("(?iu)" + regexString); 
    Matcher matcher = pattern.matcher(urlString); 
    while (matcher.find()) { 
     String match = matcher.group(1).trim(); 
     list.add(match); 
    } 
    return list; 
} 

Und es zu verwenden:

String urlString = "www.subdomain.domain.tld/page/?n=(sender_encoded_name)"; 
List<String> list = getEncodedName(urlString); 

// Display all items found matching the supplied pattern 
for(int i = 0; i < list.size(); i++) { 
    System.out.println(list.get(i)); 
} 

Konsole ausgegeben wird:

sender_encoded_name 

Regular Expression Erläuterung:

enter image description here