0

Blobstore に保存されている画像のキーを持っています。ユーザーがボタンをクリックして画像をローカルに保存できるようにしたい。Blobstore のドキュメントのサンプルでは、​​これをうまく行っています。彼らのコードは次のとおりです。

class ServeHandler(blobstore_handlers.BlobstoreDownloadHandler):
  def get(self, resource):
    resource = str(urllib.unquote(resource))
    blob_info = blobstore.BlobInfo.get(resource)
    self.send_blob(blob_info,save_as=True)

しかし、私はajaxを使いたいです。"/server/... the key..." で GET を実行すると、"GIF89a... image data..." という形式でデータが返されます。[開く/保存] ダイアログを表示する代わりに、データを取得します。私が理解していない ajax と html について何かがあるに違いありません。[開く/保存] ダイアログを表示するにはどうすればよいですか? 私は Web プログラミングが初めてです。

4

1 に答える 1

1

私の問題は、ajax を理解していなかったことです。Ajax はデータを返します。ページをレンダリングしません。"/server/...blob key..." を送信するために ajax を使用していました。私がする必要があったのは:

windows.location = "/server/...blob key..." 

そして、保存/開くダイアログボックスが表示されました。

于 2012-06-21T23:55:02.087 に答える