3

私はツイストにまったく慣れていないので、少し前進する必要があります。htm ページ以外の動的に生成されたファイル (csv ファイルなど) を提供する方法を探しています。

編集: csv ファイルでは「content-type」の変更で十分ですが、必要なのはリクエストの「content-disposition」の変更でした:

request.responseHeaders.setRawHeaders('content-disposition', ['attachment; filename="file.csv"'])
4

2 に答える 2

1

これを行う基本的な考え方は、次のような HTTP 応答を生成することです。

...
Content-Type: text/csv; charset=utf-8

1,2,3,4
...

生の HTTP リクエストがどのように見えるか知っているかどうかはわかりませんが、それは 2 つの主要なフィールドで構成されています。

  • ヘッダ
  • 本文 (html)

そして、それらは で区切られてい\r\n\r\nます。したがって、新しいContent-Typeヘッダー(に設定text/csv) を送信し、HTML の代わりにバイナリ コンテンツを送信するだけです。

ツイストでは、明らかにトラフsetHeader方法で可能です。

編集 - コメントに基づく追加の HTTP 情報

あなたは見ることができます:

于 2013-04-28T11:31:11.950 に答える