位置: 编程技术 - 正文

使用nodejs、Python写的一个简易HTTP静态文件服务器(使用权资产)

编辑:rootadmin

推荐整理分享使用nodejs、Python写的一个简易HTTP静态文件服务器(使用权资产),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:使用二氧化碳灭火器时人应该站在什么位置,使用的英文,使用权资产,使用粗盐热敷十大危害,使用的拼音,使用时间,使用灭火器时要对准火焰的什么部位喷射,使用时间,内容如对您有帮助,希望把文章链接给更多的朋友!

日常开发过程中,我们经常需要修改一些放在 CDN 上的静态文件(如 JavaScript、CSS、HTML 文件等),这个过程中,我们希望能有一种方式将线上 CDN 的目录映射为本地硬盘上的某个目录,这样,当我们在本地修改了某个文件时,不需要发布,刷新后马上能看到效果。

比如,我们的 CDN 域名是: 的访问被映射到本地的 D:workassets* 下。如访问 时,实际上是读取的是本地的 D:workassetssatp.js,而不需要从网上下载线上的文件。

实现这个功能很简单,关键点如下:

1、在本地开启一个 HTTP 服务,监听 端口;2、修改系统 hosts 文件,添加“.0.0.1 a.mycdn.com”,将 CDN 域名绑定为本地服务器地址;3、配置本地 HTTP 服务,接收到一个 GET 请求后,先检查本地硬盘上是否存在对应的文件,如存在,则返回这个文件的内容,如不存在,则返回线上对应的内容。

可以看到,关键部分是需要搭建一个本地的 HTTP 服务。这方面有很多教程,比如在本地安装 Apache 或 Ngnix 等服务器软件,再配置相应的转发规则等。不过个人觉得这类方法还是有点复杂,本文要介绍的,是另外的不需要安装服务器软件的方法。

因为我们是在本地开发调试,对性能、并发性的要求并不高,因此我们其实并不需要一个像 Apache/Ngnix 这样的专业的 HTTP 软件,我们只需要一段能提供 HTTP 服务的脚本即可。比如用 nodejs 来实现。

使用nodejs、Python写的一个简易HTTP静态文件服务器(使用权资产)

注意将上面的 local_folders 和 base_url 两个变量的值修改为你需要的值。将这个文件保存下来,比如保存为 local-cdn-proxy.js,然后在命令行里执行“node local-cdn-proxy.js”,本地服务器就运行起来了,当然,别忘了绑定 hosts 。

当通过 http 访问一个路径时,上面的脚本会先在本地对应的目录下查找,找到则返回对应文件的内容,找不到则直接 跳转到线上对应的地址。对于找不到的情况,还有一种处理办法是由本地服务器从线上下载对应的内容并返回,不过对这个需求来说, 跳转就足够了。

除了 nodejs 版本,我也写了一个 Python 的版本:

可以看到,Python 版本的代码比 nodejs 版本的精简了很多。

上面的两段代码的功能还相对比较简单,比如没有输出内容的 MIME-Type、Content-Length 等头信息,对可能的阻塞操作(如读取文件超时等)也没有做特别的处理。对于本地开发环境来说,它们已经是可以工作的版本了,你也可以继续扩展这两个脚本,以便满足更多的需求。

一行命令搞定node.js 版本升级 node有一个模块叫n(这名字可够短的。。。),是专门用来管理node.js的版本的。首先安装n模块:npminstall-gn第二步:升级node.js到最新稳定版nstable是不是

Google官方支持的NodeJS访问API,提供后台登录授权 安装此库通过npm发布。通过以下命令安装googleapis及其依赖$npminstallgoogleapis完整的API支持列表

node.js 开发指南 ? Node.js 连接 MySQL 并进行数据库操作 Node.js是一套用来编写高性能网络服务器的JavaScript工具包通常在NodeJS开发中我们经常涉及到操作数据库,尤其是MySQL,作为应用最为广泛的开源数据库则

标签: 使用权资产

本文链接地址:https://www.jiuchutong.com/biancheng/370836.html 转载请保留说明!

上一篇:Express.JS使用详解(express.json())

下一篇:一行命令搞定node.js 版本升级(一行指令)

  • 发票收款人和复核没写可以用吗
  • 个人所得税手续费奖励是否交个税
  • 服务费发票税率1%
  • 已启动申报比对异常申报,可以作废嘛清卡吗
  • 设备租赁费用
  • 延期申报预缴税款比例
  • 银行汇票存款和银行存款的区别
  • 资本化的借款利息支出计入什么科目
  • 现金账怎么记账图例
  • 开具的红字发票金税三期怎么报税?
  • 向非关联企业捐赠现金会计分录
  • 车险代缴费
  • 医院外聘专家费用由科室承担吗
  • 算材料成本的时候要算增值税吗?
  • 企业借款给个人合法吗
  • 小规模纳税人怎么判断
  • 试运营和正式运营间隔
  • 不交社保一告一个准罚多少钱
  • 进货价加多少卖不亏增值税
  • 1697507434
  • 应交增值税为负数代表什么
  • 个人转让公司限售股纳税地点要求
  • 限额领料单是一种多次使用的
  • 先征后退房产税的会计处理?
  • 无形资产的相关税费包括增值税吗
  • 公司治理的基本内涵
  • 公司章程签署
  • code inspections
  • 医保和养老保险一样吗
  • 押金要不回来怎么办
  • 车前草的功效与作用及禁忌症
  • 房产税的纳税申报与处理会计分录
  • 哪些货物出口不需要运输条件
  • npm无法将npm项识别为
  • 结转损益类收入科目分录
  • 增值税检查的内容
  • 收到职称评审费怎么做账
  • php fopen读取文件
  • 持有至到期投资账务处理
  • elementui动态表单数据回显
  • 收到待报解预算收入怎么做分录
  • 流动比率取值是取期末
  • 公司从银行提取现金4000元备作零星开支
  • 多线程并发python
  • 结算备付金管理办法(2019年修订版)
  • 职工教育经费申报表如何填写
  • 三十而已 1
  • phpcms建站流程
  • 本期应补退税额为负数怎么申报
  • 金融债券的利息不计复利不能提前支取
  • 企业所得税包含员工工资吗
  • mysql修改表结构的关键字
  • 年度亏损计提所得税吗
  • 融资性售后回租承租方出售资产为什么不缴纳增值税
  • 房地产开发的土地分割
  • 房地产开发企业会计制度
  • 应付职工薪酬中社保费怎么记账
  • 离线发票累计金额为0
  • 银行存款利息收入要交增值税吗
  • 资产负债表的预付款项项目应根据预付账款
  • 职工医保门诊一年报销多少钱
  • 军工科研事业单位会计制度
  • 怎么把mac系统的文件导出
  • window10的小娜不支持中文版
  • win7打开软件速度没有win10快
  • linux shell有什么用
  • 批处理计数
  • vue动态路由传参
  • 教你用纸折一只会跳的小兔子,非常好玩,小朋友都喜欢
  • Nodejs+angularjs结合multiparty实现多图片上传的示例代码
  • android技术总结
  • jQuery实现的tab标签切换效果示例
  • javascript基础教程教材答案
  • unity3d Human skin real time rendering with blood and water drop effect真实模拟人皮实时渲染之血液和水珠掉落效果
  • js鼠标拖动窗口的做法
  • 税务局解决户口吗
  • 福建省税务局 电子
  • 增值税专用发票增额需要什么资料
  • 四川国税发票查验真伪
  • 青岛个人所得税咨询电话是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设