概述
用 axios
请求二进制文件,一般会得到 Blob
或者 ArrayBuffer
。
需要将
axios
的请求设置为responseType: 'blob'或者'arraybuffer'请求二进制文件,一般会得到Blob或者arraybuffer。'
引用
Blob
对象是一个代表二进制数据的基本对象,生成Blob对象有两种方法:一种是使用Blob构造函数,另一种是对现有的Blob对象使用slice方法切出一部分。
用 axios
请求二进制文件,一般会得到 Blob
或者 ArrayBuffer
。
需要将
axios
的请求设置为responseType: 'blob'或者'arraybuffer'请求二进制文件,一般会得到Blob或者arraybuffer。'
Blob
对象是一个代表二进制数据的基本对象,生成Blob对象有两种方法:一种是使用Blob构造函数,另一种是对现有的Blob对象使用slice方法切出一部分。
有时候有些静态网站:如文档类的,放在公网,希望要用户认证才能访问,Nginx的ngx_http_auth_basic_module
模块基于 “HTTP Basic Authentication”
协议实现了用户认证,可以很方便的实现用户认证。
1 | server { |
userpasswd
这个文件的一行代表一个用户,格式是: user:passwd
,其中密码是加密的,可以通过 htpasswd
工具来生成。
1 | $ htpasswd -cb ./userpasswd test 123456 |
** 浏览器授权访问 **
Nginx可以提供一个简单的Web页面站点为你提供文件下载服务。
1 | server { |
** 效果: **
有些文件放在nginx下,如果不做速率限制,当客户端的网络环境比较好的话,下载速度非常快。这本来是好事,但假如服务器带宽只有10M,而有一个客户下载速率达到10M的话,其他的客户将无法访问服务器。
所以,要对单独一个连接进行速率限制。
为方便局域网内测试,这里将限制值设置的比较小。
1 | server { |
limit_rate_after
是一个门阀,表示客户下载 10m
或者 100k
的byte之后开始触发速率限制。limit_rate
是速率限制,最高 50k
。
本文以Windows平台下编译Linux应用举例,记录一下Golang交叉编译。
1 | # help |
1 | $ set GOARCH=amd64 |
在终端CMD输入没用,我直接在环境变量设置了
GOARCH
和GOOS
。这样就无法在Windows运行,因为go run
的也是指linux平台。
1 | $ curl -v URL |
1 | $ curl -v -X POST http://localhost/ping |
之前写的《深入解析HTTP–Chunk分块发送》 和 《深入解析HTTP–Multipart》 都是关于用POST请求上传文件,本文要讲的,是指POST请求传递字符数据。
我们用PostMan作为客户端,SpringBoot作为服务端,Wireshark抓包,分析一下每个请求的包结构,了解一下其中的区别。
服务端代码:
1 | @PostMapping("/post") |
自带的sphinx主题
【sphinx-doc】是基于python的文档生成器(使用文档推荐【这个】),它使用 reStructuredText
语法(类似markdown)编写文档,通过编译,可以生成html,epub,man,pdf等多种格式,现在也可以通过安装扩展来支持简单的Markdown语法。
现在普通的CPU都是有4核,在VM中如何配置虚拟机的CPU呢?
个人推荐是 CPU数量 * 核心 = X倍的内存
2个CPU * 每个CPU2核 = 4核 ,这时候最好给8G以上内存。
比如:
1 | $ sudo add-apt-repository ppa:user/ppa-name |
如mongodb的源失效,每次 apt update
都会有错误提示。
1 | root@bogon:~# apt-get update |
以下三部分内容都是来自:【Gitlab文档】
注意,Gitlab至少需要2G内存来跑
1 | $ sudo docker pull gitlab/gitlab-ce:latest |
1 | $ sudo systemctl start docker |
当尝试用docker时,提示以下错误
1 | root@bogon:~# docker ps -a |
1 | sudo apt-cache search all |
1 | sudo apt-cache show |
1 | sudo apt-get remove 软件名 |
1 | sudo apt-get remove 软件名 --purge |
1 | sudo apt-get autoremove --purge |
1 | sudo apt-get clean && apt-get autoclean |
1 | sudo dpkg -L 软件名 |
1 | sudo dpkg -l 软件名 |
1 | sudo dpkg -l | grep '软件名' |
1 | sudo dpkg -i 软件包 |
1 | sudo dpkg -r 软件包 |
1 | sudo dpkg -P 软件包 |
腾讯开源软件镜像站(Tencent Open Source Mirror Site)已于近日上线,其官方名称为「腾讯云软件源」,由腾讯云提供支持。
地址 >>> mirrors.cloud.tencent.com
官方表示搭建此开源镜像站的目的在于宣传自由软件的价值,提高自由软件社区文化氛围,推广自由软件在国内的应用。
腾讯开源软件镜像站提供了主流的 Linux 发行版下载,如 Ubuntu、Arch Linux、CentOS 和 Debian 等,以及常用的开源项目和 SDK 下载,如 Android SDK、Ceph、Flutter、Qt 和 Zabbix 等。
1 | $ sudo apt-get update |
【golang.org】 是无法访问的,【golang.google.cn】 可以下载最新版本 【v1.12.6】,【安装文档在这里】 。
以下是翻译:
官网介绍:
OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed and provisioned through APIs with common authentication mechanisms.
A dashboard is also available, giving administrators control while empowering their users to provision resources through a web interface.
Beyond standard infrastructure-as-a-service functionality, additional components provide orchestration, fault management and service management amongst other services to ensure high availability of user applications.
有道翻译:
OpenStack是一个云操作系统,它控制整个数据中心中的大量计算、存储和网络资源,所有这些资源都是通过具有公共身份验证机制的api管理和供应的。
还提供了一个仪表板,让管理员控制,同时授权用户通过web界面提供资源。
除了标准的基础设施即服务功能之外,其他组件还提供编排、故障管理和服务管理,以确保用户应用程序的高可用性。
Openstack最初是由NASA和Rackspace在2010年共同发起的一个开源的云计算平台项目,目前项目正在被 Reahat、IBM、AMD、Intel、戴尔、思科、微软等超过一百家厂商共同研发,目前国内对于云计算的需求也逐渐增加,华胜天成、高德地图、京东、阿里巴巴、百度、中兴、华为等中国企业也加入到了Openstack项目研发当中,Openstack项目也正在随着全球内得到了众多厂商的参与支持而快速成熟。
OpenStack 是一系列开源工具(或开源项目)的组合,主要使用池化虚拟资源来构建和管理私有云及公共云。其中的六个项目主要负责处理核心云计算服务,包括计算、网络、存储、身份和镜像服务。还有另外十多个可选项目,用户可把它们捆绑打包,用来创建独特、可部署的云架构。