首页
关于
Search
1
Fastadmin 美化后台样式
310,891 阅读
2
关于破解移动宽带光猫 型号: GS3101 超级管理员密码
26,918 阅读
3
给Thinkphp3用上composer
19,964 阅读
4
Wallpaper完美壁纸修复天气bug(无需申请API)
19,748 阅读
5
PECL无法安装时手动编译安装PHP扩展
19,606 阅读
Linux
Mysql
PHP
Nginx
归档
Android
Python
IOS
浴室沉思
C++
CCF CSP认证
Windows
C#
前端
登录
Search
标签搜索
php
git
Windows
wkhtmltopdf
短信
defense
API
Google Photos
python
wkhtmltoimage
网页快照
linux
ssr
https
mail
sms
小程序
封装
ComoBox
拼多多
Guooo
累计撰写
126
篇文章
累计收到
81
条评论
首页
栏目
Linux
Mysql
PHP
Nginx
归档
Android
Python
IOS
浴室沉思
C++
CCF CSP认证
Windows
C#
前端
页面
关于
搜索到
4
篇与
的结果
2023-09-01
Uniapp/小程序网络请求出现错误errno: 600001的解决方案
最近调试一个小程序提交上线,每天都几百人使用,但是经常有人反应小程序出现请求错误,包括图片加载不出来,微信登录提示失败,菜单无法获取等,出错率甚至一度达到10%,于是我就开始排查。首先看了眼后台没有问题,没有报错请求,看nginx日志配合客户反应出错的时间点,发现小程序出问题时根本没有请求到后端来,那么问题就是出在前端了。首先我想到的是不是代码有错误,于是查看了微信We分析的js日志,发现零零散散的几个报错,还都是css样式问题,这里排除。小程序是使用Uniapp开发的,使用了luch-request这个请求框架,然后我又想到是框架有bug不适配,于是在代码里加了日志上报,把所有请求的拦截器错误信息都上报到微信,过了一段时间一看日志,发现了几百条错误信息,全部都是网络请求错误,看来问题是出在这了。错误信息包括但不限于以下:{"errno":600001,"errMsg":"request:fail errcode:-101 cronet_error_code:-101 error_msg:net::ERR_CONNECTION_RESET"} {"errno":600001,"errMsg":"request:fail -101:net::ERR_CONNECTION_RESET"} {"errno":600001,"errMsg":"request:fail errcode:-7 cronet_error_code:-7 error_msg:net::ERR_TIMED_OUT"} {"errno":600001,"errMsg":"request:fail -109:net::ERR_ADDRESS_UNREACHABLE"} {"errno":600003,"errMsg":"request:fail interrupted"} {"errno":5,"errMsg":"request:fail timeout"}其中600001是最多的,还有一些600002的报错,但是我在我手机和店员的手机上都没能复现错误,没办法只能开始面向Google编程,做了如下处理:首先怀疑是证书问题,因为原来是使用的Let's Encrypt免费证书,我担心是不是小程序不兼容,申请了腾讯云免费证书换上,然后去https://myssl.com/检测证书,评级是A,证书链也完整,非常健康,但是问题依旧。然后我又怀疑是不是TLS版本影响,因为客户反应说安卓问题比较多而且机型也不老旧,IOS也有但是没那么多,我看到有人说安卓新版本证书验证更严格了,而服务器目前是支持了ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3这三个版本,我怀疑TLSv1.3可能存在不兼容,于是改成ssl_protocols TLSv1.1 TLSv1.2,没用;又想是不是旧版本拖后腿呢,于是改成ssl_protocols TLSv1.2 TLSv1.3;,没用;最后只留下ssl_protocols TLSv1.2;,还是一样,问题依旧。还有哪里又问题呢,带宽?有可能,小程序图片比较多而且有很多大图都没处理,服务器带宽又只有10M左右,并发高的情况下可能会导致请求失败吗?不好说,试试吧,把所有资源文件传到腾讯云CDN,又花钱买了https请求包,小程序加载速度是快了,但是问题依旧。请求时间?http请求超时已经改到60s了,也不可能,而且也尝试开启了http2和不验证ssl证书,都没用,问题依旧。新版机型才有的问题,新机型有什么不一样呢?IPv6!对了!有些手机默认是开启IPv6的,但是服务器可能并不支持IPv6又或者没有IPv6的地址,会不会也有影响?赶紧跑到服务器看了下,果然开着IPv6,赶忙关闭然后重启网络服务,满心欢喜,但问题依旧。IP没问题,DNS呢?会不会服务器DNS或者域名解析DNS服务器有问题?服务器网络问题?一个个都尝试修改,问题依旧。请求token太长?校验合法域名?没备案?强制https跳转?都不对,问题依旧。搜索引擎都被我翻烂了,ChatGPT都问哑火了,怎么回事小老弟?最后只能从线下客户入手了,让店员把API的域名打印成二维码,找到出问题的客户,直接让他们帮忙扫码看有无问题,最后您猜怎么着嘿?所有出问题的客户扫码都TM跳转到一个地址:原来域名被反诈中心误拦截了,我刚申请的新域名啊!我TM江苏真行
2023年09月01日
19,027 阅读
0 评论
3 点赞
2020-09-04
网页快照几种实现方案参考
(一)、HTML转图片1.使用 html2canvas 制作网页快照(1)介绍官网: https://html2canvas.hertzen.com/Html2canvas是一个JS库,通过在web引入JS的方式,点击按钮后可以根据ID呼叫需要制作快照的标签,会根据标签制作成图片。(2)使用方法如需要制作快照的html为:<div id="capture" style="padding: 10px; background: #f5da55"> <h4 style="color: #000; ">Hello world!</h4></div>那么使用html2canvas 制作快照只需要html2canvas(document.querySelector("#capture")).then(canvas => { document.body.appendChild(canvas)});(3)特征其支援的WebBrowser包含Firefox 3.5+Google ChromeOpera 12+IE9+Safari 6+优点:支援的WebBrowser较多,使用比较方便,只需要引入一个JS即可缺点:需要根据ID制作快照2.使用wkhtmltoimage 制作网页快照(1)介绍官网:https://wkhtmltopdf.org/wkhtmltoimage是一个独立的程序,和wkhtmltopdf属于同一个程序中,支援Windows、Ubuntu、Centos、Debian、MacOS等主流操作系统,安装完毕之后使用十分方便,只需要一个url即可制作成快照图片或者pdf。(2)使用方法使用简单,只需要一个可以访问的url即可wkhtmltoimage http://openclever.pro/OpenRich/admin/login.aspx login.pngWkhtmltoimage [要制作快照的url] [输出档的路径]完整中文参数详解在:https://note.coccoo.cc/Archive/wkhtmltopdforimage_params_zh.html(3)特征优点:使用十分方便,支援的操作系统较多缺点:需要使用可以直接访问的url(如果需要登陆的页面可能无法拍快照)3.使用WebSiteThumbnail制作网页快照(C#)(1)介绍使用WebSiteThumbnail.cs制作网页快照,把这个class放入C#项目中,然后直接呼叫GetWebSiteThumbnail这个Function就可以制作快照图片。WebSiteThumb.cs下载(2)使用方法 //在任意网页中的Page_Load事件时,加入如下代码: protected void Page_Load(object sender, EventArgs e) { Bitmap m_Bitmap = WebSiteThumbnail.GetWebSiteThumbnail("http://www.google.cn", 600, 600, 600, 600); MemoryStream ms = new MemoryStream(); m_Bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Png);//JPG、GIF、PNG等均可 byte[] buff = ms.ToArray(); Response.BinaryWrite(buff); }(3)特征优点:C#语言,可以融入项目中缺点:没来得及测试,暂不清楚效果如何(二)、存储当前网页的Coding版本渲染1.使用保存Html源码的形式制作快照(1)介绍把整个html的源代码(包含所有html、js和css)保存下来,类似于在浏览器中Ctrl+S存储为 .html 的档案,命名为 文件名-版本号.html,如 detail-26018.html,这样只需要记录版本号 26018 就可以找到对应的文件名称,直接展示即可作为快照使用。(2)使用方法把渲染出来的画面直接保存为 xxx-version.html ,需要查看快照的时候直接展示在浏览器即可。(3)特征优点:便于存储和管理,可以还原成页面原本的样子缺点:存储大量档可能会导致服务器缓慢,可以不存在DB而是存于io中,DB直接保存io的位置即可
2020年09月04日
5,203 阅读
0 评论
0 点赞
2020-09-04
wkhtmltopdf中文参数详解
wkhtmltopdf [OPTIONS]... <input file> [More input files] <output file> 常规选项 --allow <path> 允许加载从指定的文件夹中的文件或文件(可重复) --book* 设置一会打印一本书的时候,通常设置的选项 --collate 打印多份副本时整理 --cookie <name> <value> 设置一个额外的cookie(可重复) --cookie-jar <path> 读取和写入的Cookie,并在提供的cookie jar文件 --copies <number> 复印打印成pdf文件数(默认为1) --cover* <url> 使用HTML文件作为封面。它会带页眉和页脚的TOC之前插入 --custom-header <name> <value> 设置一个附加的HTTP头(可重复) --debug-javascript 显示的javascript调试输出 --default-header* 添加一个缺省的头部,与页面的左边的名称,页面数到右边,例如: --header-left '[webpage]' --header-right '[page]/[toPage]' --header-line --disable-external-links* 禁止生成链接到远程网页 --disable-internal-links* 禁止使用本地链接 --disable-javascript 禁止让网页执行JavaScript --disable-pdf-compression* 禁止在PDF对象使用无损压缩 --disable-smart-shrinking* 禁止使用WebKit的智能战略收缩,使像素/ DPI比没有不变 --disallow-local-file-access 禁止允许转换的本地文件读取其他本地文件,除非explecitily允许用 --allow --dpi <dpi> 显式更改DPI(这对基于X11的系统没有任何影响) --enable-plugins 启用已安装的插件(如Flash --encoding <encoding> 设置默认的文字编码 --extended-help 显示更广泛的帮助,详细介绍了不常见的命令开关 --forms* 打开HTML表单字段转换为PDF表单域 --grayscale PDF格式将在灰阶产生 --help Display help --htmldoc 输出程序HTML帮助 --ignore-load-errors 忽略claimes加载过程中已经遇到了一个错误页面 --lowquality 产生低品质的PDF/ PS。有用缩小结果文档的空间 --manpage 输出程序手册页 --margin-bottom <unitreal> 设置页面下边距 (default 10mm) --margin-left <unitreal> 将左边页边距 (default 10mm) --margin-right <unitreal> 设置页面右边距 (default 10mm) --margin-top <unitreal> 设置页面上边距 (default 10mm) --minimum-font-size <int> 最小字体大小 (default 5) --no-background 不打印背景 --orientation <orientation> 设置方向为横向或纵向 --page-height <unitreal> 页面高度 (default unit millimeter) --page-offset* <offset> 设置起始页码 (default 1) --page-size <size> 设置纸张大小: A4, Letter, etc. --page-width <unitreal> 页面宽度 (default unit millimeter) --password <password> HTTP验证密码 --post <name> <value> Add an additional post field (repeatable) --post-file <name> <path> Post an aditional file (repeatable) --print-media-type* 使用的打印介质类型,而不是屏幕 --proxy <proxy> 使用代理 --quiet Be less verbose --read-args-from-stdin 读取标准输入的命令行参数 --readme 输出程序自述 --redirect-delay <msec> 等待几毫秒为JS-重定向(default 200) --replace* <name> <value> 替换名称,值的页眉和页脚(可重复) --stop-slow-scripts 停止运行缓慢的JavaScripts --title <text> 生成的PDF文件的标题(第一个文档的标题使用,如果没有指定) --toc* 插入的内容的表中的文件的开头 --use-xserver* 使用X服务器(一些插件和其他的东西没有X11可能无法正常工作) --user-style-sheet <url> 指定用户的样式表,加载在每一页中 --username <username> HTTP认证的用户名 --version 输出版本信息退出 --zoom <float> 使用这个缩放因子 (default 1) 页眉和页脚选项 --header-center* <text> (设置在中心位置的页眉内容) --header-font-name* <name> (default Arial) (设置页眉的字体名称) --header-font-size* <size> (设置页眉的字体大小) --header-html* <url> (添加一个HTML页眉,后面是网址) --header-left* <text> (左对齐的页眉文本) --header-line* (显示一条线在页眉下) --header-right* <text> (右对齐页眉文本) --header-spacing* <real> (设置页眉和内容的距离,默认0) --footer-center* <text> (设置在中心位置的页脚内容) --footer-font-name* <name> (设置页脚的字体名称) --footer-font-size* <size> (设置页脚的字体大小default 11) --footer-html* <url> (添加一个HTML页脚,后面是网址) --footer-left* <text> (左对齐的页脚文本) --footer-line* 显示一条线在页脚内容上) --footer-right* <text> (右对齐页脚文本) --footer-spacing* <real> (设置页脚和内容的距离) ./wkhtmltopdf --footer-right '[page]/[topage]' http://www.baidu.com baidu.pdf ./wkhtmltopdf --header-center '报表' --header-line --margin-top 2cm --header-line http://192.168.212.139/oma/ oma.pdf 表内容选项中 --toc-depth* <level> Set the depth of the toc (default 3) --toc-disable-back-links* Do not link from section header to toc --toc-disable-links* Do not link from toc to sections --toc-font-name* <name> Set the font used for the toc (default Arial) --toc-header-font-name* <name> The font of the toc header (if unset use --toc-font-name) --toc-header-font-size* <size> The font size of the toc header (default 15) --toc-header-text* <text> The header text of the toc (default Table Of Contents) --toc-l1-font-size* <size> Set the font size on level 1 of the toc (default 12) --toc-l1-indentation* <num> Set indentation on level 1 of the toc (default 0) --toc-l2-font-size* <size> Set the font size on level 2 of the toc (default 10) --toc-l2-indentation* <num> Set indentation on level 2 of the toc (default 20) --toc-l3-font-size* <size> Set the font size on level 3 of the toc (default 8) --toc-l3-indentation* <num> Set indentation on level 3 of the toc (default 40) --toc-l4-font-size* <size> Set the font size on level 4 of the toc (default 6) --toc-l4-indentation* <num> Set indentation on level 4 of the toc (default 60) --toc-l5-font-size* <size> Set the font size on level 5 of the toc (default 4) --toc-l5-indentation* <num> Set indentation on level 5 of the toc (default 80) --toc-l6-font-size* <size> Set the font size on level 6 of the toc (default 2) --toc-l6-indentation* <num> Set indentation on level 6 of the toc (default 100) --toc-l7-font-size* <size> Set the font size on level 7 of the toc (default 0) --toc-l7-indentation* <num> Set indentation on level 7 of the toc (default 120) --toc-no-dots* Do not use dots, in the toc 轮廓选项 --dump-outline <file> 转储目录到一个文件 --outline 显示目录(文章中h1,h2来定) --outline-depth <level> 设置目录的深度(默认为4) 页脚和页眉 * [page] 由当前正在打印的页的数目代替 * [frompage] 由要打印的第一页的数量取代 * [topage] 由最后一页要打印的数量取代 * [webpage] 通过正在打印的页面的URL替换 * [section] 由当前节的名称替换 * [subsection] 由当前小节的名称替换 * [date] 由当前日期系统的本地格式取代 * [time] 由当前时间,系统的本地格式取代 ./wkhtmltopdf --footer-right '[page]/[topage]' http://www.baidu.com baidu.pdf ./wkhtmltopdf --header-center '报表' --outline --header-line --margin-top 2cm --header-line http://www.hao123.com/ hao123.pdf ./wkhtmltopdf --header-left '[webpage]' --footer-center '测试([page]/[toPage])' http://www.baidu.com baidu.pdf
2020年09月04日
5,080 阅读
0 评论
1 点赞
2020-06-19
解决Hbuilder打包的app返回键直接退出
问题描述:Hbuilder打包的app如果点击手机返回键,app会直接退出,返回不了上一页。解决子页面点击返回键直接退出,而不是返回上一级,代码如下: //写一段JS代码,放到所有公共JS里面就可以 <script type="text/javascript"> document.addEventListener('plusready', function() { var webview = plus.webview.currentWebview(); plus.key.addEventListener('backbutton', function() { webview.canBack(function(e) { if(e.canBack) { webview.back(); } else { webview.close(); //hide,quit //plus.runtime.quit(); } }) }); }); </script>原文链接:https://blog.csdn.net/qq_25252769/article/details/76913083
2020年06月19日
2,133 阅读
0 评论
0 点赞