2016-04-19 3 views
1

Ich versuche, verschiedene Ordner nach mobilen Plattformen zu setzen, aber ich kann es nicht herausfinden, wie es geht.Python AppEngine - Wie übergeben Abfrage Strings in app.yaml

Hier einige Code:

app.yaml

- url: /winners 
    secure: always 
    static_files: static_files/winners.json 
    upload: static_files/winners.json 
    http_headers: 
    Content-Type: application/json; charset=latin-1 

das funktioniert gut, aber wenn ich die Abfrage Zeichenfolge wie folgt festgelegt:

- url: /winners?platform=android 
    secure: always 
    static_files: static_files/winners.json 
    upload: static_files/winners.json 
    http_headers: 
    Content-Type: application/json; charset=latin-1 

Es ist nicht!

Ich möchte grundsätzlich verschiedene Ressourcen für jede Plattform senden, ist das möglich?

Thanks :)

ps: ähnliche Frage, die auf „nein“ sagt, was ich Define query param in app.yaml in Google Appengine

Antwort

3

Als Antwort auf die Frage, die Sie verweisen, Abfrageparameter werden ignoriert, wenn das Routing über app.yaml erreichen will. Es ist jedoch möglich, verschiedene Ressourcen für jede Plattform anzubieten, nur mit anderen Mechanismen.

Ein Ansatz durch die Codierung der Plattform in der URL sein könnte, aber nicht als Abfrageparameter, zum Beispiel /winners/android, über diesen app.yaml Routing behandelt:

- url: /winners/(.*)$ 
    secure: always 
    static_files: static_files/\1/winners.json 
    upload: static_files/\1/winners.json 
    http_headers: 
    Content-Type: application/json; charset=latin-1 

, die eine Datei als static_files/android/winners.json gespeichert dienen würde

Weitere Details in Static file pattern handlers.

+0

Vielen Dank für Ihre Antwort, ich habe eine andere Frage in Bezug auf meine überprüft und ich denke, was Sie gesagt haben, ist der Weg zu gehen. :) – user309838

Verwandte Themen