5849898283
Unit tests functional and coverage back to 100% Add more routes to dictionary, add more credentials, add default port 5554, rename cameradar logs ENV variable, improve unit test readability, remove tmp file
74 lines
1.5 KiB
Markdown
74 lines
1.5 KiB
Markdown
go-curl
|
|
=======
|
|
|
|
[](http://travis-ci.org/andelf/go-curl)
|
|
|
|
my golang libcurl(curl) binding.
|
|
|
|
See more examples in ./examples/ directory~!
|
|
|
|
LICENSE
|
|
-------
|
|
|
|
go-curl is licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0.html).
|
|
|
|
Current Development Status
|
|
--------------------------
|
|
|
|
* currently stable
|
|
* READ, WRITE, HEADER, PROGRESS function callback
|
|
* a Multipart Form supports file uploading
|
|
* Most curl_easy_setopt option
|
|
* partly implement share & multi interface
|
|
* new callback function prototype
|
|
|
|
How to Install
|
|
--------------
|
|
|
|
Make Sure You Have libcurl (and its develop headers, static/dynamic libs) installed!
|
|
|
|
|
|
$ go get -u github.com/andelf/go-curl
|
|
|
|
Current Status
|
|
--------------
|
|
|
|
* Linux x64
|
|
* passed go1 (ArchLinux)
|
|
* Windows x86
|
|
* passed go1 (win7, mingw-gcc 4.5.2, curl 7.22.0)
|
|
* Mac OS
|
|
* passed go1 (Mac OS X 10.7.3, curl 7.21.4)
|
|
|
|
Sample Program
|
|
--------------
|
|
|
|
```go
|
|
package main
|
|
|
|
import (
|
|
"fmt"
|
|
curl "github.com/andelf/go-curl"
|
|
)
|
|
|
|
func main() {
|
|
easy := curl.EasyInit()
|
|
defer easy.Cleanup()
|
|
|
|
easy.Setopt(curl.OPT_URL, "http://www.baidu.com/")
|
|
|
|
// make a callback function
|
|
fooTest := func (buf []byte, userdata interface{}) bool {
|
|
println("DEBUG: size=>", len(buf))
|
|
println("DEBUG: content=>", string(buf))
|
|
return true
|
|
}
|
|
|
|
easy.Setopt(curl.OPT_WRITEFUNCTION, fooTest)
|
|
|
|
if err := easy.Perform(); err != nil {
|
|
fmt.Printf("ERROR: %v\n", err)
|
|
}
|
|
}
|
|
```
|