- 博客(15)
- 收藏
- 关注
原创 GO实现ssh客户端的基本功能
最近有个功能要求实现ssh 客户端的基本功能,想起来Go有自己实现的一套的SSH协议,就从网上找了份源码看了下,发现不支持tab、↑、↓等按键。没办法只能硬啃文档,下面是修改后的源码。package mainimport ( "fmt" "golang.org/x/crypto/ssh" "golang.org/x/crypto/ssh/terminal" "log" "os")...
2019-09-30 17:52:20
5542
3
原创 webSocket server 跟http包一起使用方法
webSocket server 跟http包一起使用方法最近在捣鼓一个小工具需要用到http+websocket,就去百度了下发现网上大部分教程都是用的github.com/gorilla/websocket这个包作为实例。之前记得x/net下面是有一个websocket包的.想着官方的东西解耦可能更好点,就再网上搜了下但是关于这个包的实例很少。既然这样那就看下这个包下有没有example(...
2019-04-13 18:46:06
3094
原创 kmutex源码分析
昨天偶然阅读pouch项目的源码发现有个kmutex库看了下代码发现挺有意思的。根据chan的特性,进行上锁、解锁,某些场景下很是方便!源码详情地址:github首先是结构体有两个type KMutex struct { sync.Mutex keys map[string]*value}type value struct { c chan struct{} wait...
2019-01-18 11:53:10
329
原创 记录一次dns服务器导致 hhvm,hacklang 官网无法打开
今天突发奇想想去看看hhvm发展的咋样了从谷歌上查询到 http://hhvm.com/ 打开 google提示无找不到服务器ip?我当时第一反应把小飞机打开了,然后刷新开始一样的报错。当时想不至于是脸谱网的问题吧,这么大的公司。自己本地开终端ping也是提示找不到服务器ip, 于是决定换台电脑试试,开了自己的linux虚拟机看了下, ping 了下竟然能ping通就是dns服务器的问题了。...
2018-12-25 16:31:55
354
原创 MAC OSX php dyld: Library not loaded: /usr/local/xxxx.dylib
今天折腾一个叫vips的图像处理扩展,安装官方流程执行 brew install vips 没任何报错, 然后 pecl install vips 就发生报错dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.62.dylib Referenced from: /usr/local/bin/php Reason: i...
2018-12-08 17:35:21
2608
1
原创 Ubuntu 安装php 7.3遇到的错误
configure: error: Cannot find OpenSSL's <evp.h>这个问题是缺少openssl-devel apt-get install libssl-dev 安装即可checking for cURL 7.15.5 or greater... configure: error: cURL version 7.15.5 or later is re...
2018-11-08 11:19:54
5645
原创 MACOSX下PHP安装pdo_oci扩展
环境安装首先先去oracle官网下载Clinet SDK 下载地址 选择下载 Basic、SDK这两个文件就行了。解压后把俩个文件夹的内容合并mv ~/Downloads/instantclient-basic-macos.x64-12.2.0.1.0-2/* ~/instantclient/mv ~/Downloads/instantclient-sdk-macos.x64-12.2.0...
2018-11-05 18:54:53
1288
原创 Golang GBK To Utf-8
gbk to utf-8最近在写一个爬取小说网站的小爬虫工具,爬取的过程中发现爬取的网站编码并不是utf-8编而是gbk编码,上网差了点资料,发现网上一些推荐的库,我个人感觉设置的不是很符合Go的设计模式或者说功能太多了,于是上网查了点资料。首先不了解gbk跟utf-8 是什么东西的请百度首先go识别的编码就是utf-8,所以我只需要把gbk转换到utf-8编码即可。func main(...
2018-10-22 15:01:51
5441
原创 golang 学习笔记 runtime.Caller
runtime.Caller 学习笔记今天阅读log的源码的时候发现他会去调用runtime.Caller 获取文件名称跟行数好奇心就来了,java或者其他语言的开发中log打印文件名称跟行数是一种很正常的事,具体怎么实现的一直没有研究过。今天就研究下golang中是怎么实现的func Caller(skip int) (pc uintptr, file string, line in...
2018-09-05 11:08:50
10005
原创 golang http clietn 上传文件
今天使用网上无意间看到了搜狗图片上传,使用浏览器的方式实现的。于是就用go尝试了下//上传文件的apiuploadUrl := "http://"file, err := os.OpenFile("QQ20180817-202205.png", os.O_RDONLY, os.ModePerm)if err != nil { panic(err)}定义上传地址跟打开...
2018-08-17 23:33:52
1953
原创 Golang 使用http Client下载文件
之前使用beego的http库的时候,有的情况需要下载文件。beego是能实现,但就是有点问题:不支持回调,没法显示下载速度,这在日常开发中是不可忍受的。 看了下beego的实现主要是使用了io.copy函数,于是就深入的看了下实现原理,发现挺简单的,于是就根据io.copy原理实现的一个简单的下载器//定义要下载的文件var durl = &quot;https://dl.google.c...
2018-08-17 01:07:33
17479
6
原创 Golang bufio.Reader ReadLine学习
之前学习go的时候被这个ReadLine坑了一段时间,以为加个for循环就会一行一行的读下去。当时好像调试了半天之类的,总之今天来带你们看看他怎么实现的吧。首先我们构造一个Reader方便我们调试与分析:sr := strings.NewReader("123\n456");reader := bufio.NewReader(sr);line, _, err := reader...
2018-08-11 01:51:23
16558
原创 php XPath爬取小说站内容
今天复习php的时候看到dom这个扩展,想了想在php里面貌似最大的用途就只是xpath$content = file_get_contents("https://read.qidian.com/chapter/bLkfqG4_EUSoUTngny7bXQ2/lUKaD4PkCBRp4rPq4Fd4KQ2");$doc = new DOMDocument('1.1', 'utf-8');t...
2018-08-10 01:41:46
729
原创 PHP 使用魔法函数 __call 实现类似重载的功能
这几天为了面试复习了php的魔法函数看到 __call使我有了一个想法也许能够用使用这个函数实现方法重载public function __call($name, $arguments)这是_call的函数头,有被调用的函数名称跟参数,我的想法是根据名称然后匹配参数类型来实现重载。 经过调试我发现 :调用类部已有的方法不会去调用__callfunction testFuc1(st...
2018-08-09 15:46:09
369
原创 学习 Dart 1
长远的目标Dart的初学者一边学一边记,下面是我的目前学习目标:大部分函数库熟练使用Flutter 熟练使用实现的目标一个最基本的WebFramework功能路由文件下载思路&amp;amp;想法首先判断dart能不能实现HttpServer。经过查阅文档答案是√ HttpServer在dart:io这个库里面这是类的定义abstrac...
2018-07-31 19:52:20
304
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅