Ist „http://“ Voraussetzung auch wenn der URL dies nicht hat?
Keineswegs. Es gilt das allgemeine URL Schema und da werden neuerdings auch BLob-URLs unterstützt.
D.h. dass die Daten auch im Browser gespeichert sein können (z.B. JS-Objekte, Blob- u. Data-URLs) und mit JS ein Download-Dialog erzeugt werden kann, wo der Benutzer dann auswählen kann wo er die Daten auf der Platte speichert.
Hinsichtlich Content-Type gibt es da keinen Einschränkungen.