将 vue 生成的 js 上传到七牛的实例

 更新时间:2017年07月28日 09:11:04   作者:jackPan  
本篇文章主要介绍了将 vue 生成的 js 上传到七牛的实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

一般 vue 的项目,大家都是直接把最后生成的 css js 等文件直接上传到服务器,并没有才有 cdn 的业务

这样做一般有2个弊端,

  1. 增加服务器带宽压力,访问量一旦上去,服务器就可能因为带宽压力挂掉
  2. 部分地区访问速度会变慢

不过虽然知道归知道,但是每次都手动把 js css 文件传到七牛上很累的。
尤其是在改动频繁的情况下,上传七牛每次上传七牛 cdn 很浪费时间。

于是就去找七牛的文档,决定用脚本来解决这个问题,我是用的 python sdk 实现得。

python 环境请自行安装

首先下载七牛的包

pip install qiniu

然后安装第三方的依赖包 glob2

pip install glob2

upqiniu.py

# -*- coding: utf-8 -*-
from qiniu import Auth, put_file,
import qiniu.config
import glob2
import os
#需要填写你的 Access Key 和 Secret Key
access_key = '*********************'
secret_key = '**********************'
#构建鉴权对象
q = Auth(access_key, secret_key)
#要上传的空间
bucket_name = '****'

resources = glob2.glob('dist/static/**')
def upload(path):
  file_name = path.replace('dist/', '')
  key = file_name
  token = q.upload_token(bucket_name, key, 3600)
  localfile = './' + path
  put_file(token, key, localfile)

for r in resources:
  if os.path.isfile(r):
   upload(r)

需要将本脚本(upqiniu.py)放到 dist 同级目录下,如下图:


image.png

脚本中的 access_key secret_key 你登录七牛后在个人资料中即可找到:


还需要将 webpack 的 publicPath 改成七牛的地址即改成下面这个


在 vue 的项目中,只需要改动 config 目录下面的 index.js 即可


虽然改动起来有一点小麻烦,但是一劳永逸,

首先 npm run build

然后 python upqiniu.py

最后将你的 index.html 拉到线上服务器就可以了。

ps: 这个脚本会将 dist/static/ 的所有文件上传到七牛,包括 字体文件 , 图片等。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Vue使用codemirror实现一个可插入自定义标签的textarea

    Vue使用codemirror实现一个可插入自定义标签的textarea

    这篇文章主要为大家详细介绍了Vue如何使用codemirror实现一个可插入自定义标签的textarea,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-02-02
  • vue动态添加路由addRoutes之不能将动态路由存入缓存的解决

    vue动态添加路由addRoutes之不能将动态路由存入缓存的解决

    这篇文章主要介绍了vue动态添加路由addRoutes之不能将动态路由存入缓存的解决方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-02-02
  • 详解如何在Vue里建立长按指令

    详解如何在Vue里建立长按指令

    这篇文章主要介绍了详解如何在Vue里建立长按指令,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • vue+swiper实现组件化开发的实例代码

    vue+swiper实现组件化开发的实例代码

    这篇文章主要介绍了vue+swiper实现组件化开发的相关资料,需要的朋友可以参考下
    2017-10-10
  • vue.js打包之后可能会遇到的坑!

    vue.js打包之后可能会遇到的坑!

    这篇文章主要给大家介绍了关于vue.js打包之后可能会遇到的一些坑,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-06-06
  • Vue3组件间的通信方式详解

    Vue3组件间的通信方式详解

    这篇文章主要介绍了Vue3组件间的通信方式,在使用vue时,我们经常会把不同的模块拆分成不同的组件,而组件之间有的需要传递数据,所以组件间的数据通信就非常重要了
    2023-04-04
  • vue组件系列之TagsInput详解

    vue组件系列之TagsInput详解

    TagsInput 是一种可编辑的输入框,通过回车或者分号来分割每个标签,用回退键删除上一个标签。这篇文章主要介绍了vue组件TagsInput的相关知识,需要的朋友可以参考下
    2020-05-05
  • Vue必学知识点之forEach()的使用

    Vue必学知识点之forEach()的使用

    在前端开发中,经常会遇到一些通过遍历循环来获取想要的内容的情形,这时候就需要用到forEach()了,下面这篇文章主要给大家介绍了关于Vue必学知识点之forEach()使用的相关资料,需要的朋友可以参考下
    2021-05-05
  • 在vue-cli的组件模板里使用font-awesome的两种方法

    在vue-cli的组件模板里使用font-awesome的两种方法

    今天小编就为大家分享一篇在vue-cli的组件模板里使用font-awesome的两种方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • Vue Echarts实现带滚动效果的柱形图

    Vue Echarts实现带滚动效果的柱形图

    这篇文章主要为大家详细介绍了Vue Echarts实现带滚动效果的柱形图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04

最新评论