これらの用語を誤って使用していると、私はストリーミングの概念が新しくなりました。私はグーグルで多くのリソースを見つけることができませんでした。ストリーミング。私が今持っているDjangoでブラウザに画像をストリーミングする方法
:
ブラウザは
var img = new Image();
img.src = 'http://www.example.com/api/images/51234/
img.onload = function() {
$('#my-img').attr('src', this.src);
}
Djangoが回るDjangoのエンドポイントにイメージのための要求を行うには、画像
import requests
def get_image(request, img_id):
response = requests.get("http://api.myexample.net/album/123/img/{0}".format(img_id))
return HttpResponse(res.content, mimetype="image/jpeg")
のためのサービスに別の要求を行います
このプロセスの私の理解は、Djangoはブラウザに応答を返す前に、このイメージのバイナリ情報をすべてメモリに読み込んで返すことです。画像がPythonに完全に渡されるのを待つのではなく、ブラウザに直接ストリームを流す方法はありますか?
私はStreamingHTTPResponseクラスのドキュメントを読んでいますが、すべての例ではサーバーのディスクからファイルを読み込んでStreamingHTTPResponseに渡し、別のサービスからファイルを取得しないようにしています。
悲しいことに、私は要求を行う必要があると思う。私が含まなかったのは、私が呼んでいるサービスが、画像を返す前に要求でトークンを認証する必要がある認証済みエンドポイントであるということです。 – diplosaurus
生成される画像リンクが静的であるかどうかを確認できます。 –