Ich habe diese URL = https://stackoverflow.com/questions/ask?next=1&value=3 Jetzt muss ich die Abfrage Zeichenfolge von dieser URL abrufen. Ich don; t möchte request.META verwenden, um Abfragezeichenfolge abzurufen. Wie immer habe ich es heraus, dass es zwei weitere Möglichkeiten, um die Query-String-Der beste Weg, Abfrage-String von einer URL in Python zu bekommen?
Mit urlparse Verwenden urlparse.urlparse (url) .query dats es
über URL kodieren zu erhalten Verwenden urlencode und das Wörterbuch params request.GET passieren hinein, die String-Darstellung davon zu bekommen ....
Welcher Weg ist besser, um den Abfrage-String zu bekommen ...? Einige meiner Kollegen sagen, dass Urlencode ist viel besser, aber ich bin nicht zufrieden wid dort Antworten soweit .. wie sie erwähnt urlparse Anrufe urlencode intern auch .. Auch in diesem Punkt habe ich Zweifel, wie ich denke, urlparse und urlencode sind völlig independent.as urlencode ist im urllib-modul .... bitte klär das ding.
Es ist wichtig zu beachten, dass request.GET.urlencode(), da QueryDict ein ungeordnetes Wörterbuch umschließt, Schlüssel möglicherweise nicht in derselben Reihenfolge zurückgibt, in der sie in dem ursprünglichen Anforderungs-URI angezeigt werden. – Aaron
Das ist eine fundamentale von Wörterbüchern tatsächlich. Darüber hinaus sollten die meisten Abfragezeichenfolgen als ungeordnet betrachtet werden, wenn sie codiert sind. Wenn es eine echte Liste ist, wird es bestellt. – uchuugaka