Externes, domänenübergreifendes MP3 wird im Flash Player nicht geladen (google Text-To-Speech)

8

Ich möchte die Google Text-zu-Sprache-URL im Flash Player auf meiner Webseite wiedergeben.

Ich verwende Ссылка , aber es funktioniert nicht:

%Vor%     
xkill 25.04.2012, 00:40
quelle

3 Antworten

4

Die URL Ihrer MP3-Datei muss URL-codiert sein (http://www.w3schools.com/tags/ref_urlencode.asp)

%Vor%     
Tchoupi 25.04.2012, 12:23
quelle
4

Ich habe intensiv geforscht und Lösungen gefunden. Die Schlussfolgerung von Mathieu (dass Google die Argumente ändert und Sie Ihre eigene App schreiben müssen) ist falsch. Das Problem ist, dass Google nach domainübergreifendem Zugriff sucht. Es wird nicht über Adobe Flash Player crossdomain.xml reguliert, wie in this Fall , überraschend. Flash Player versucht nicht, diese Datei vom Server-Stammverzeichnis zu laden (getestet in Firebug).

Das Problem ist, dass Google nach Referer sucht, und wenn das gesetzt ist, weigert es sich, den Inhalt zu laden, überprüfen Sie bitte:

Das Problem besteht also darin, dass ein Spoofing für Inline-Content stattfindet.

Lösung 1 - RefererKiller

Sie können einen einfachen Trick verwenden: beziehen Sie sich auf die mp3-Datei in <img src=""> tag, siehe mein Beispiel , mit angehängtem Referer-Spoofing. Dann muss der Flash-Player ihn nicht herunterladen, da er bereits im Cache ist. Es gibt Lösungen, um Referer von Inline-Inhalten zu entfernen (siehe > RefererKiller-Implementierung für Bilder ). Ein Kommentar weist jedoch darauf hin, dass die browserübergreifende Kompatibilität möglicherweise ein Problem darstellt.

Lösung 2 - https

Die einfachste Lösung ist also, https protocol zu verwenden - löschen Sie Ihren Cache und versuchen Sie den obigen Link mit https hinzugefügt . Der Referer wird nicht für Inline-Content festgelegt . Wenn Sie jedoch kein vertrauenswürdiges Zertifikat haben, möchten Sie wahrscheinlich nicht, dass Ihre Benutzer den schrecklichen 4-Klick-Prozess durchlaufen, um das Vertrauen in Ihr Zertifikat zu bestätigen. In diesem Fall möchten Sie wahrscheinlich eine andere Lösung wählen.

    
TMS 09.06.2013 12:48
quelle
2

Anstatt die mp3-URL direkt aufzurufen, verwenden Sie ein PHP-Skript, um Cross-Domain-Probleme zu vermeiden

Ссылка

    
Fréderic Cox 12.06.2013 12:00
quelle