sfFileValidator und Firefox

Ich bin gerade auf ein interessantes Phänomen mit Symfony gestossen, wenn ich eine Form-Validierung auf einen File-Upload von PDF-Dateien loslasse: In einem Modul der Backend-Applikation unseres Projektes ist ein File-Upload für PDF-Dateien vorgesehen. Dieses Form lasse ich auf den MIME-Type (in diesem Fall application/pdf) validieren. Das ganze lief auch schon auf einer anderen Maschine (auch dort mit Firefox 2.0.x) problemlos. Aber hier auf meinem Schleppi will die Validierung nicht funktionieren. Im Internet Explorer 7 hingegen klappt alles problemlos.

Mit der FF-Erweiterung “Live HTTP Headers” bin ich allerdings dem Fehler recht schnell auf die Spur gekommen: Der Firefox schickt anstelle von “application/pdf” den MIME-Type “text/html” mit. Warum er das macht kann ich noch nicht ganz nachvollziehen. Fakt ist aber, dass der sfFileValidator bei der Prüfung auf den MIME-Type des vom Browser mitgesendeten MIME-Type validiert und nicht auf den Tatsächlichen. Wenn alle Stricke reißen, muss ich wohl einen eigenen Validator schreiben, der dann “richtig” den MIME-Type prüft und sich nicht auf die Informationen des Browsers verlässt.

Dieser Beitrag wurde unter Software-Wahnsinn, Symfony veröffentlicht. Setze ein Lesezeichen auf den Permalink.

5 Antworten zu sfFileValidator und Firefox

  1. David sagt:

    Hey,
    das macht mich ziemlich stutzig… habe daraufhin bißchen gegoogelt und bin auf folgenden Artikel gestoßen:

    http://cephas.net/blog/2007/01/05/firefox-mimetypesrdf-corruption/

    Bei solchen Bugs kann man sich dann aber wirklich nicht mehr auf den Browser verlassen…

  2. Ingo sagt:

    Hallo David,

    ich habe auch ganz kräftig gestutzt, als ich den Bug bemerkt habe. Danke für den Link. Anscheinend halten es auch die Mozilla / Firefox-Entwickler nicht immer ganz so wichtig jeden Bug zu beheben.

  3. Pingback: rpsblog.com » A week of symfony #35 (27 August -> 2 September 2007)

  4. Ralf sagt:

    Hallo,

    also das selbe Problem hatte ich einst auch, mir ging es v.a. um die im Admin Generator fehlerhaften Dateiendungen (.bin). Dazu folgendes:

    http://www.symfony-project.org/forum/index.php/m/16907/#msg_16907

    Viele Grüße

    Ralf

  5. Ingo sagt:

    Hallo Ralf,

    den im Forums-Beitrag vorgeschlagenen Ansatz habe ich letztendlich auch bzw. so ähnlich umgesetzt. Und seitdem ist die Welt wieder schön 😉

Kommentare sind geschlossen.