golang微信公众平台之消息接入

API文档上的内容 注册公众平台什么的就不说了,消息接入部分,文档地址: http://mp.weixin.qq.com/wiki/index.php?title=%E6%B6%88%E6%81%AF%E6%8E%A5%E5%8F%A3%E6%8C%87%E5%8D%97#.E7.94.B3.E8.AF.B7.E6.B6.88.E6.81.AF.E6.8E.A5.E5.8F.A3 简言之就是,提交申请,微信服务器将发送GET请求到你所填写的URL上,这个GET请求附带四个参数: 参数 描述...阅读全文

博客园 2013-06-01 17:57 wlts

go win 下的環境配置

http://code.google.com/p/gomingw/downloads/list  下載 安裝包,安裝 安裝完畢后會自建path環境 在代碼目錄建一個批處理文件,專門用來編譯生成EXE文件 set file=%1 set f8=%file:.go=.8% set fexe=%file:.go=.exe% 8g -o %f8% %file% && 8l -o %fexe% %f8% 寫完代碼后,拖動go文件到這個批處理上,就可以自動生成了阅读全文

开源中国博客 2012-08-20 12:15 Dray

golang--Redis最佳的Go语言驱动

Redis可以缓存数据,这使得操作数据可以达到一个较快的速度,在一些需要数据较快存储的场合,例如微博,redis发挥着不可替代的作用。在redis的官网,golang驱动有几个,忽然来了兴致,那个才是redis最佳的Go语言驱动? 这些驱动都处于开发的前期,还没有发行正式版,有些已经很久没更新了。从更新日期来看,Gary Burd的radigo和gosexy的redis最近有更新,而且从他们的README文件来看,他们对redis的支持还不错。很有可能,他们两者会有1个胜出。但到底谁才是最佳的,...阅读全文

博客园 2013-04-01 13:24 getong

go语言defer使用

defer Go语言中有种不错的设计,即延迟(defer)语句,你可以在函数中添加多个defer语句。当函数执行到最后时,这些defer语句会按照逆序执行,最后该函数返回。特别是当你在进行一些打开资源的操作时,遇到错误需要提前返回,在返回前你需要关闭相应的资源,不然很容易造成资源泄露等问题。如下代码所示,我们一般写打开一个资源是这样操作的: func ReadWrite() bool { file.Open("file") // 做一些工作 if failureX { ...阅读全文

CSDN博客 2013-09-27 12:53 eclipser1987

[go语言]基础知识

一 简单的hello world HelloWorld package main import "fmt" func main() { fmt.Println("Hello World!") var i string fmt.Scanln(&i) } 1)packge总会出现 2)import引入包到库中 3)Go程序首先调用main包的main函数 二 语法简介 1 包 1)首先需要在文件里说明包范围package 2)引入使用的包import 3)变量是静态类型的 2 go语...阅读全文

CSDN博客 2013-04-22 22:56 sxt102400

GO语解惑:从源码分析GO程序的入口(续:_rt0_go)

书接上回。现在我们知道_rt0_go这个汇编过程是GO语言的真正入口并做了一些初始化工作,本文来大略的过一下这个过程和它调用的几个runtime里的函数。 Windwos Live Writer写的文章,编码有问题,对不住各位:我不想改。   参数 MOVL    argc+0(FP), AX   MOVL    argv+4(FP), BX    SUBL    $128, SP&#16...阅读全文

开源中国博客 2014-04-02 11:32 sz_Promi

golang--从类型转换角度看interface

刚开始接触golang,可能对interface的使用有些迷惑,尤其在有些资料里,介绍得更是云里雾里,让人搞不清楚。本文尝试从类型转换的角度来解析interface,希望对大家能有所帮助。不多说,先上代码。 package main import ( "fmt" ) func main() { var general interface{} general = 6.6 type_cast(general) general = 2 type_c...阅读全文

博客园 2013-03-30 17:45 getong

64位win7下go语言的初步学习记录001:开发环境搭建

初步学习go语言,在win7 64位下,安装go1.3正式版,使用LiteIDE搭建最简洁清晰的开发环境,以利于初步的学习。 1.下载必备软件工具: Google下载或许对你而言“不方便”,那么请在以下地址下载,或者其他任何能够下载的地址中下载以下两个软件工具,这是必须的。 下载   windows 64位 下使用的  go1.3正式版  ; 下载  轻量级开源跨平台的 LIteIDE X21  ; 2.安装go1.3: 强烈建议一路点击下一步就可以了,安装路径就是默认为最佳, C:\Go ...阅读全文

CSDN博客 2014-08-10 12:10 u011925943

go语言 接口的思考(一)

在《学习Go语言》中,有一个例子,说得是怎样做一个通用的接口来实现给数字,字符串来排序。 第一种思路: 1. 定义一个函数,可以接收任意类型做为入参,然后 在函数内,根据入参来判断是那一个类型 func sort(i []interface{}) { switch i.(type) { case string: // ... case int // ... 来实现 } } 在调用时,sort([]int{1, 4, 5}) 我们传入了一个数组, 很不幸,Go不能(隐式)转换为slice。...阅读全文

CSDN博客 2013-08-09 10:25 zistxym

go语言环境

操作系统:ubuntu 64bit 依次执行(这里是在/目录下执行的) 1、sudo apt-get install bison ed gawk gcc libc6-dev make 2、apt-get install python-setuptools python-dev build-essential 3、sudo easy_install mercurial 4、hg clone -r release https://go.googlecode.com/hg/ go 5、cd go/s...阅读全文

ITEYE博客 2011-01-23 18:08 canofy

Go lang 的GC问题及解决

我的应用是要顺序跑每一天的数据,每天的数据都很大,每天的数据单独处理,没有全局变量,循环执行。 结果使用top查看时发现,内存使用直线上升,每次循环使用的内存根本没有释放,结果就是:内存耗尽。 用惯了高级语言的我,好久都没遇到这么底层的问题。 我的直接疑问是:难道Go的GC没有发现那些应该回收的内存吗? 结果Google了一下验证了我的判断:在Linux 32位机上的GC机制确实有问题,我耐性的看完了整个回帖。 有人扬言不解决这个问题就不使用Go,推荐的解决方案大部分是迁移应用至64位系统,还有...阅读全文

新浪博客 2013-03-29 16:18:49 孤独古怪的孩子

go升级1.3bug,查询源码

go升级用最新的go包,记得要在自己的程序库中先makeclean(删除原先的.ma文件),再make下(Makefile文件中有 go install ../...) 采用压缩包安装的go,用编辑器可以很快定位源码 以一个例子来说明 gifConf, err1 := gif.DecodeAll(imgSource) //这里的DecodeAll调用的image/gif库里的 ok进入该源码 func DecodeAll(r io.Reader) (*GIF, error) { var d d...阅读全文

CSDN博客 2014-09-22 16:40 u010026901

使用golang开发https服务

用Golang来写一个http服务极其简单,写一个https服务,也一样的极其简单。 生成key.pem和cert.pem: openssl req -new -x509 -key key.pem -out cert.pem -days 1095 package main import ( "fmt" // "io/ioutil" "net/http" "log" ) func main() { http.HandleFunc( "/", makeHandler ) err := http.Li...阅读全文

新浪博客 2013-01-14 15:00:53 githen-小郭子

go的赋值与声明语法糖

:= 只有在左侧有未定义变量时才能使用(有定义的变量也可以) := 只进行语义上的检查,循环内也可以使用,第一次之后的效果和=相同 := 和 = 都要求左右的值和变量一一对应,不会截断 特殊情况,map、chan、类型推定可以返回一个值,也可以是两个值 当map中该键不存在时,总是返回零值和false,否则后者返回true 当chan关闭以后,总是返回零值和false,否则后者返回true package main type INT int func (r *IN...阅读全文

开源中国博客 2013-07-29 21:35 刘地

【Go web开发之revel+mgo】第4章 实现评论功能

sorry,各位在开始这一章之前请各位先到,第5章把整个项目的css  copy出来,这一章忘了加,本来想在后面加的,但是发现页面的内容太多了 1.设计评论页面 上一章我们做了简单的写blog和显示功能,这里不得不说一下,首先,我们的blog里面不能加图片链接这样的东西,不支持markdown语法。博主比较懒,尝试找了几个插件发现不满意之后就不想尝试了(其实能找到github编写wiki的编辑器才是我想要的,有谁知道的告诉我哦),大家可以自己尝试去找一些自己喜欢的编辑器(虽然revel中文社...阅读全文

CSDN博客 2014-04-25 16:26 jov123

go学习笔记

go学习笔记初始go异常处理的defer是个不错的特性,虽然说有人反驳说其中的java代码不够合理,但是这种方式确实对c是一个巨大的进步。工程编译根据方便,没有Makefile文件,只要一个go命令即可。但是必须要设置GOPATH路径,这一步能省掉就更好了。顺序编程变量:支持:int,字符串,数组,数组切片,结构体,指针,字典,函数指针。iota:在每次const是初始化为0,每出现一次会自增1。全局变量不支持类型推导——:=go 的取反是^而不是~float64相当于c中的double。浮点数...阅读全文

CSDN博客 2014-03-15 20:50 chgaowei

go语言工程约定,分包和编译

go-lang已经发布了go1,前段时间看了一下go语言的教程,就喜欢上了这门语言,但使用多个文件编译是碰到一些麻烦,引用出错编译通不过,google之找到了这篇教程https://golang.org/doc/code.html,我按自己的理解记录一下,英文好的童鞋还是看原文吧! go语言可以用makefile,也可以按他的约定来直接编译。约定其实比较简单,go语言是这么来配置他的工程的 prjDir # 工程根目录 bin/ hello ...阅读全文

开源中国博客 2013-01-21 16:30 lavafree