为了账号安全,请及时绑定邮箱和手机立即绑定

请各位大佬指点!golang如何操作二进制流呢?

请各位大佬指点!golang如何操作二进制流呢?

侃侃尔雅 2019-09-19 13:38:11
有一个需求是这样的:需要用go从一个接口获取pdf文件,然后前端js向go请求这个pdf文件,最终在页面上显示一个预览按钮并可以点击预览pdf前端→go→pdf具体是这么一个过程,pdf用二进制方式传递,具体如何实现呢。。?
查看完整描述

2 回答

?
蓝山帝景

TA贡献1843条经验 获得超7个赞

如果PDF过大,一次性读取会有内存问题。另外,不要使用panic来中断逻辑运行,一旦panic没被处理,整个程序挂掉funcmain(){http.HandleFunc("/pdf",function(wResponseWriter,r*http.Request){w.Header().Add("Content-Type","application/pdf");fp,err:=os.Open("./go.pdf")iferr!=nil{http.Error(w,fmt.Errorf("internalservererror"),http.StatusInternalServerError)return;}deferfp.Close()if_,err:=io.Copy(w,fp);err!=nil{http.Error(w,fmt.Errorf("internalservererror"),http.StatusInternalServerError)return;}});}
查看完整回答
反对 回复 2019-09-19
  • 2 回答
  • 0 关注
  • 695 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信