リクエストに応じていくつかのファイルをダウンロードする必要があるWebAPIコントローラーがありますが、プレーンテキストファイルになると、ブラウザーのダウンロード要求が表示されません。JSONのようなプレーンテキストの応答のみを提供します(私の場合、それはJSONP WebAPIです)。
スタック (および他のサイト) から他の Q&A を確認しましたが、まだ何も得られません:
ここに私の現在のコードがあります:
var httpResponse = new HttpResponseMessage(HttpStatusCode.OK);
httpResponse.Content = new StreamContent(new MemoryStream(Encoding.UTF8.GetBytes(content)));
httpResponse.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
httpResponse.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment");
httpResponse.Content.Headers.ContentDisposition.FileName = "speedcam.txt";
return httpResponse;
これが Chrome の応答です。
キャッシュ制御:キャッシュなし
Content-Disposition:添付ファイル; ファイル名=speedcam.txt
コンテンツの長さ:17462
Content-Type:アプリケーション/オクテット ストリーム
日付:2012 年 8 月 27 日 (月) 04:53:23 GMT
有効期限:-1
pragma:no-cache
サーバー:Microsoft-IIS/8.0
X-AspNet-バージョン:4.0.30319
X-Powered-By:ASP.NET
X-SourceFiles:=?UTF-8?B?TTpcVHJhYmFsaG9cTWFwYVJhZGFyXE1hcGFSYWRhci5XZWJBUEk0XEV4cG9ydGE=?
問題ないようですが、ファイル テキスト全体が Chrome Dev Tools の [Response] タブにあります。