###実現したいこと
Javascriptで非同期処理にてPDFファイルをサーバ側で作成し、そのファイルをダウンロードまたはブラウザで直接開きたい。
###発生している問題
作成したファイルを何かしら(バイナリ?)などで受け取り、
コールバックで別ウィンドウにPDFを開きたいです。
尚、諸事情によりサーバのPDFファイルを直接開くことはできません。
###該当のソースコード
<サーバ側>.NET
' レスポンスオブジェクト
With response
response.ContentType = "application/octet-stream"
response.WriteFile(strFilePath)
response.End()
End With
<Javascript>
$.ajax({
url: './api/print',
type: 'POST',
headers: {
'Content-Type': 'application/json'
},
dataType: 'json',
data: JSON.stringify(datajson)
}).done(function(res) {
// ここでPDFを開きたいです。
})
.fail(function(jqXHR, textStatus) {
alert( "Request failed: " + textStatus );
});
###試したこと
GETでレスポンスを直接受け取れば、ブラウザに表示できましたが、
実装時にそれはできないです。
またJavascriptでファイルを扱うときに、サーバ側がどんな形式でファイルを返せばいいかも教えていただけると助かります。
表示するためにはどうしたらいいか、お分かりの方、教えて下さい。
###補足情報(言語/FW/ツール等のバージョンなど)
asp.NET MVC 4 (API)
回答2件
あなたの回答
tips
プレビュー