ホームページ  >  記事  >  バックエンド開発  >  中間ファイルを使用せずにメモリ内のファイルに書き込み、それを HTTP 経由で送信するにはどうすればよいですか?

中間ファイルを使用せずにメモリ内のファイルに書き込み、それを HTTP 経由で送信するにはどうすればよいですか?

王林
王林転載
2024-02-06 11:00:04949ブラウズ

如何写入内存中的文件,然后通过 HTTP 发送它而不使用中间文件?

質問の内容

データをリクエスト、処理、フォーマットして CSV にし、リクエストに応じて Web サービス経由で送信する必要があります。

要求され処理されたデータが以下の data にあると仮定すると、中間一時ファイルを使用してこれを行うことができました。

リーリー

リクエストが成功しました:

リーリー

ここまでは順調です。今度は

経由で中間ファイルを削除したいと思います。
  • メモリ「コンテナ」を使用して CSV データを書き込む
  • その内容をバイトとして http ライターに書き込みます

io.*bufio.* を使用して必要なタイプにログインする方法がまだよくわかりません:

  • csv.newwriter()*os.file を必要とし、*csv.writer
  • を返します
  • この *csv.writer コンテンツは、何らかの方法で byte ...
  • として抽出する必要があります。
  • ...http.responsewriter.write()
  • を提供するため

さまざまな種類のメモリ ファイル操作の問題を解決する一般的なメカニズム (およびこのケースに特有のメカニズム) は何ですか?


正解


##csv.newwriterio.writer を必要とするため、 http.responsewriter インスタンスを実行できます。 の内容はファイルまたはメモリに書き込まれずに渡されます。

これはデモです:

リーリー

以上が中間ファイルを使用せずにメモリ内のファイルに書き込み、それを HTTP 経由で送信するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。