编程踩坑杂记


检查字符串是否含有隐藏字符

是否有“ZERO WIDTH NO-BREAK SPACE”,比如编码中的BOM——Byte Order Mark

方法1:将字符串使用urlencode编码,得到新的字符串,即可看出是否含有隐藏字符

方法2:使用Linux的file 文件名命令,得到文件概况

Fiddler无法捕获Java请求

根据官网,只需设置JVM的启动参数为如下:-DproxySet=true -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8888

但是使用DefaultHttpClient时,还是无法被捕获,因为其不会自动使用jvm的参数,要在代码中如下设置,参考

DefaultHttpClient httpClient = new DefaultHttpClient();// 创建httpClient对象
ProxySelectorRoutePlanner routePlanner = new ProxySelectorRoutePlanner(
        httpClient.getConnectionManager().getSchemeRegistry(),
        ProxySelector.getDefault());
httpClient.setRoutePlanner(routePlanner);

Spoon更新失败

原因:输入流的数据记录比目标表的多,导致根据输入流查询时,在目标表找不到对应的记录,所以更新失败

解决方法:勾选“忽略查询失败”

双击控制台闪退,看不到错误输出

由双击运行改为

  1. 先启动控制台
  2. 进入应用所在目录
  3. 输入应用名称回车运行
    此时,即使应用执行错误,控制台也不会关闭

Angular+NG-ZORRO报错“无法加载路由”

组件不要继承于ModalComponentBase基础类

uni-app的text无法解析html特殊字符编码

text组件只能解析少数字符:  < > & ' ? ?

要想解析其他字符,则有两种方式

  1. 使用rich-text组件,缺点是需要先将html文档构建成一个规范对象,再赋值给该组件,比较麻烦
  2. 使用view组件,直接将html文档字符串赋值给它的v-html属性,最终uni-app会自动解析html文档,转为rich-text

卸载docker和k8s

yum remove kube* && \
rm -rf ~/.kube/ && \
rm -rf /etc/kubernetes/ && \
rm -rf /etc/systemd/system/kubelet.service.d && \
rm -rf /etc/systemd/system/kubelet.service && \
rm -rf /usr/bin/kube* && \
rm -rf /etc/cni && \
rm -rf /opt/cni && \
rm -rf /var/lib/etcd && \
rm -rf /var/etcd && \
yum clean all

yum remove docker* && \
rm -rf /etc/docker && \
rm -rf /run/docker && \
rm -rf /var/lib/dockershim && \
rm -rf /var/lib/docker

rm -rf /usr/local/bin/kube*
rm -rf /usr/local/bin/docker

find /usr/ -name kube* | xargs rm -rf
find /usr/ -name docker* | xargs rm -rf

旧版nfs-client-provisioner因selflink问题无法兼容新版k8s

问题:旧版本nfs-client-provisioner依赖依赖k8s的selflink特性,而新版本的k8s已经移除此特性,同时,新版本nfs-client-provisioner放在gcr仓库,不好拉取

解决:有人做了适配,并将镜像上传到dockerhub,名为vbouchaud/nfs-client-provisioner,经测试可用,k8s部署nfs-client-provisioner的yaml文件直接使用旧版的即可,无需改动

centos7设置docker daemon远程连接

官网文档参考:

  • docker-daemon配置文件
  • 设置docker远程连接

新建配置文件/etc/docker/daemon.json,加入hosts字段,值为可运行连接的方式或主机地址

重启docker服务:

systemctl daemon-reload
systemctl restart docker

使用命令netstat -ant -p检查是否正在监听端口

坑:网上很多文章都是改/lib/systemd/system/docker.service文件的ExecStart字段,经多次测试无效

majora启动失败排查

开机启动报错:failed to start cpus scheduler,无法进入登录界面

排查过程:

  1. 进入tty3控制终端:ctrl+alt+f3
  2. 查看启动日志:journalctl -b -r,r参数为按时间倒序
  3. 发现报错日志:error while loading shared libraries: libffi.so.7: cannot open shared object file: No such file or directory
  4. 安装libffi:pacman -S libffi
  5. 重启又发现报错:error while loading shared libraries: libffi.so.6: cannot open shared object file: No such file or directory
  6. 建立软连接:ln -s /usr/lib/libffi.so.7 /usr/lib/libffi.so.6
  7. 检查libffi.so.6和libffi.so.7是否都已存在:find /usr/lib/ -name libffi.so*
  8. 重启成功登陆:reboot

相关