当前位置: 首页 > news >正文

做包装一般看什么网站安徽省住房和城乡建设厅网站首页

做包装一般看什么网站,安徽省住房和城乡建设厅网站首页,2022年免费网站软件下载,受欢迎的扬中网站建设文章目录 1.Web 页面导出数据到文件由后台实现还是前端实现?2.Golang Excel 库选型3.后台实现示例4.xlsx 库的问题5.小结参考文献 1.Web 页面导出数据到文件由后台实现还是前端实现? Web 页面导出表数据到 Excel(或其他格式)可以…

文章目录

  • 1.Web 页面导出数据到文件由后台实现还是前端实现?
  • 2.Golang Excel 库选型
  • 3.后台实现示例
  • 4.xlsx 库的问题
  • 5.小结
  • 参考文献

1.Web 页面导出数据到文件由后台实现还是前端实现?

Web 页面导出表数据到 Excel(或其他格式)可以由前端或后台来实现,具体的实现方式取决于你的应用需求和架构。以下是一些考虑因素:

  1. 前端实现
  • 如果你的数据导出不涉及复杂的数据处理、数据权限控制或数据来源的保护,你可以考虑在前端实现数据导出。

  • 前端实现通常意味着使用JavaScript库或框架来生成Excel文件,例如使用开源库如SheetJS的xlsx.js或者使用浏览器内置的API,如Blob对象和FileSaver.js来生成Excel文件。

  • 前端实现具有即时性,用户可以在浏览器中直接进行数据导出操作,不需要等待后台处理。

  1. 后台实现
  • 如果你需要处理大量数据、进行复杂的数据操作、实施数据权限控制、或者需要从数据库或其他后端数据源提取数据,通常更适合在后台实现。

  • 后台实现可以使用服务器端脚本,如 PHP、Node.js、Python 等,来生成 Excel文件。这可以确保数据的一致性和安全性。

  • 后台实现还可以允许对大型数据集进行分页、筛选、排序等操作,以提供更强大的导出功能。

一种常见的做法是,前端触发数据导出请求,将请求发送到后台,后台处理数据生成Excel文件,然后将生成的Excel文件发送回前端以供用户下载。这种方法结合了前后端的优势,可以提供数据处理和安全性。

2.Golang Excel 库选型

目前开源 Golang Excel 库流行的有两个:

  • excelize

Excelize 是一个功能强大的 Go 语言 Excel 库,你可以使用 Excelize 创建和编辑工作簿、工作表、单元格等内容。

GitHub 仓库:https://github.com/qax-os/excelize

  • xlsx

xlsx 是一个简单的Golang库,用于读写 XLSX 文件。它提供了创建、编辑工作簿、工作表和单元格的功能。

GitHub 仓库:https://github.com/tealeg/xlsx

因为 xlsx 较为轻量,所以下面以 xlsx 为例,给出实现。

3.后台实现示例

在 Web 框架 Gin 中生成 Excel 文件并在接口返回。

func ExportHandler(c *gin.Context) {file := xlsx.NewFile()sheet, _ := file.AddSheet("InsuranceActive")// Add titles.titles := []string{"Id","CreatedAt","UpdatedAt","CreatorId","UpdaterId","CompanyName",}row := sheet.AddRow()for _, title := range titles {cell := row.AddCell()cell.Value = title}// Add rows just like add titles....// Return the excel file.c.Header("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")filename := fmt.Sprintf("IndustryInfos_%v.xlsx", time.Now().Format("2006-01-02T15:04:05"))c.Header("Content-Disposition", "attachment; filename="+filename)if err := file.Write(c.Writer); err != nil {c.JSON(http.StatusOK, "failed")return}c.JSON(http.StatusOK, "suceess")
}// 设置路由
engine.GET("/xlsx/export", ExportHandler)

注意回包 Header 的设置:
(1)Content-Type 设为:

"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"

关于其他类型文件的 MIME 可以参考:What is a correct MIME type for .docx, .pptx, etc.? - Stack Overflow。

(2)还需要设置 “Content-Disposition” 表示回包是一个附件,并需要指定附件名称。

4.xlsx 库的问题

通过浏览器下载库 tealeg/xlsx 生成的 Excel 文件后,打开时会报下面的错误。

在这里插入图片描述
点击“是”后可正常打开文件,说明文件内容是正确的。

该警告在 v1 就已经出现,且库的作者早已知晓,但目前最新版本 v3 仍未解决该问题。可能因为不影响 Excel 文件内容的正确性,所以拖到现在仍未解决。

详细讨论,请参见 XLSX files produced by this library need repair by Excel. #53。

奇怪地是通过func (*File) Save直接保存至本地的 Excel 文件没有这个问题。

5.小结

综上所述,前端或后台的选择取决于你的具体需求、性能、安全性以及数据处理的复杂性。一些应用可能会同时在前端和后台实现导出功能,以提供更灵活的选项。


参考文献

The tealeg/xlsx Tutorial: Reading and writing xlsx files with Go
What is a correct MIME type for .docx, .pptx, etc.? - Stack Overflow
XLSX files produced by this library need repair by Excel. #53

http://www.yayakq.cn/news/183989/

相关文章:

  • 网站建设服务哪家好 价格多少钱物联网是干什么的用的
  • 给自己做的网站换首页wordpress域名变回80
  • wordpress建站课程自己可以学着做网站吗
  • 垂直电子商务网站建设网站非法收录用户信息
  • 网页设计作业个人网站上线一款app需要多少钱
  • 做网站wamp和xampwordpress 开发 pdf
  • 网站功能介绍是什么自己电脑怎么做网页
  • 班级设计网站建设如何做网站建设团队建设
  • 昆山做网站哪家好失物招领网站开发项目需求分析
  • 营销型网站建设策划书怎么写做旅游网站的设计感想
  • 网站导航栏代码加入网站帮忙做网站
  • 网站 域名解析错误手机app制作多少钱
  • 淄博周村专业网站建设公司怎样看一个网站是谁做的
  • 织梦做网站需要钱吗沧州快速关键词排名优化
  • 好看英文网站6网站建设做网站
  • 网站建设如何站内搜索我在学校志愿队做网站的经历
  • 购物网站建设得背景电子商务网站的建设的原理
  • 网站维护兼职wordpress is_admin('edit.php')
  • 怎么清理网站后门文件做一款小说网站
  • 长春集团网站建设百度网页设计教程
  • 北京网站 百度快照wordpress主题 儿童
  • 网站外部外链建设个人备案的域名拿来做别的网站
  • 优良的网站邮箱服务器提供商isp互联网招聘网站排行
  • 松江网站建设公司怎么样黄冈贴吧
  • 四川建设网站信息查询中心襄阳营销网站建设
  • 苏州网站建设联系电话珠海百度搜索排名优化
  • 如何制作餐馆网站网页版传奇制作教程
  • 模板网站建设全过程无锡百度公司王东
  • 大型网站怎么做seo广东省建设工程安监局网站
  • 阿勒泰网站建设国家批准的正规学历提升机构