No description
Find a file
Andreas Rumpf eecbfc31e1
Merge pull request #9 from zivoslav/master
XferInfoCallback
2025-12-24 07:44:03 +01:00
.gitignore Initial commit 2015-08-21 00:00:52 +02:00
libcurl.nim XferInfoCallback 2025-12-24 07:02:59 +01:00
libcurl.nimble Fix DLL names and use new Nimble format. 2017-04-26 17:55:54 +02:00
LICENSE.txt initial commit 2015-08-21 00:03:38 +02:00
README.md Create README.md 2020-06-15 00:04:58 +01:00

libcurl.nim

Nim wrapper for libcurl (v7.x)

libcurl v7.x

basic example

import libcurl

proc curlWriteFn(
  buffer: cstring,
  size: int,
  count: int,
  outstream: pointer): int =
  
  let outbuf = cast[ref string](outstream)
  outbuf[] &= buffer
  result = size * count
  
let webData: ref string = new string
let curl = easy_init()

discard curl.easy_setopt(OPT_USERAGENT, "Mozilla/5.0")
discard curl.easy_setopt(OPT_HTTPGET, 1)
discard curl.easy_setopt(OPT_WRITEDATA, webData)
discard curl.easy_setopt(OPT_WRITEFUNCTION, curlWriteFn)
discard curl.easy_setopt(OPT_URL, "http://localhost/")

let ret = curl.easy_perform()
if ret == E_OK:
  echo(webData[])

see also: https://curl.haxx.se/libcurl/c/example.html