Closed chr3 closed 9 years ago
I have found https://www.npmjs.com/package/node-libcurl. Installing on Windows What you need to have installed: Python 2.7 Visual Studio 2010/2012 (Express version works!) Just that, really. Can you update this if Windows is actually unsupported ?
I'm on Win7-64bit. Being in a company environment the usage of a proxy is required for internet access. I had set an evironment variable "http_proxy=http://..." and for example "git clone https://github.com/..." works without any problem.
C:\MyData>npm install node-libcurl \
Error: Command failed: C:\Windows\system32\cmd.exe /s /c "git init -q && git submodule add https://github.com/JCMais/curl-for- Cloning into 'deps/curl-for-windows'... fatal: unable to access 'https://github.com/JCMais/curl-for-windows.git/': Could not resolve host: github.com Clone of 'https://github.com/JCMais/curl-for-windows.git' into submodule path 'deps/curl-for-windows' failed
npm ERR! Windows_NT 6.1.7601 npm ERR! argv "C:\MyPrograms\iojs\node.exe" "C:\MyPrograms\iojs\node_modules\npm\bin\npm-cli.js" "install" "node-libc npm ERR! node v2.3.3 npm ERR! npm v2.11.3 npm ERR! code ELIFECYCLE
npm ERR! node-libcurl@0.4.0 install:
node tools/retrieve-win-deps && node tools/generate-stubs && node-gyp rebuild
npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the node-libcurl@0.4.0 install script 'node tools/retrieve-win-deps && node tools/generate-stubs && node-gy npm ERR! This is most likely a problem with the node-libcurl package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node tools/retrieve-win-deps && node tools/generate-stubs && node-gyp rebuild npm ERR! You can get their info via: npm ERR! npm owner ls node-libcurl npm ERR! There is likely additional logging output above.npm ERR! Please include the following file with any support request: npm ERR! C:\MyData\Workspace_431\Node_2\npm-debug.log
0 info it worked if it ends with ok 1 verbose cli [ 'C:\MyPrograms\iojs\node.exe', 1 verbose cli 'C:\MyPrograms\iojs\node_modules\npm\bin\npm-cli.js', 1 verbose cli 'install', 1 verbose cli 'node-libcurl' ] 2 info using npm@2.11.3 3 info using node@v2.3.3 4 verbose install initial load of C:\MyData\Workspace_431\Node_2\package.json 5 verbose readDependencies loading dependencies from C:\MyData\Workspace_431\Node_2\package.json 6 silly cache add args [ 'node-libcurl', null ] 7 verbose cache add spec node-libcurl 8 silly cache add parsed spec { raw: 'node-libcurl', 8 silly cache add scope: null, 8 silly cache add name: null, 8 silly cache add rawSpec: 'node-libcurl', 8 silly cache add spec: 'C:\MyData\Workspace_431\Node_2\node-libcurl', 8 silly cache add type: 'directory' } 9 verbose addLocalDirectory C:\Users\g3237\AppData\Roaming\npm-cache\node-libcurl\0.4.0\package.tgz not in flight; packing 10 verbose tar pack [ 'C:\Users\g3237\AppData\Roaming\npm-cache\node-libcurl\0.4.0\package.tgz', 10 verbose tar pack 'C:\MyData\Workspace_431\Node_2\node-libcurl' ] 11 verbose tarball C:\Users\g3237\AppData\Roaming\npm-cache\node-libcurl\0.4.0\package.tgz 12 verbose folder C:\MyData\Workspace_431\Node_2\node-libcurl 13 info prepublish node-libcurl@0.4.0 14 verbose addLocalTarball adding from inside cache C:\Users\g3237\AppData\Roaming\npm-cache\node-libcurl\0.4.0\package.tgz 15 silly cache afterAdd node-libcurl@0.4.0 16 verbose afterAdd C:\Users\g3237\AppData\Roaming\npm-cache\node-libcurl\0.4.0\package\package.json not in flight; writing 17 verbose afterAdd C:\Users\g3237\AppData\Roaming\npm-cache\node-libcurl\0.4.0\package\package.json written 18 silly install resolved [ { name: 'node-libcurl', 18 silly install resolved version: '0.4.0', 18 silly install resolved author: { name: 'Jonathan Cardoso', email: 'me@jonathancardoso.com' }, 18 silly install resolved description: 'Node bindings for libcurl. Based on the work from node-curl.', 18 silly install resolved keywords: [ 'node-curl', 'curl', 'libcurl', 'node-libcurl' ], 18 silly install resolved homepage: 'https://github.com/JCMais/node-libcurl', 18 silly install resolved repository: { type: 'git', url: 'git://github.com/JCMais/node-libcurl.git' }, 18 silly install resolved main: './index.js', 18 silly install resolved scripts: { install: 'node tools/retrieve-win-deps && node tools/generate-stubs && node-gyp rebuild' }, 18 silly install resolved dependencies: { bindings: '~1.2', debug: '^2.2', nan: '~1.8' }, 18 silly install resolved devDependencies: 18 silly install resolved { 'body-parser': '^1.12', 18 silly install resolved 'cookie-parser': '^1.3', 18 silly install resolved express: '^4.12', 18 silly install resolved 'http-auth': '^2.2', 18 silly install resolved multiparty: '~3.2.6', 18 silly install resolved progress: '~1.1.8', 18 silly install resolved mocha: '^2.2', 18 silly install resolved should: '^6.0', 18 silly install resolved jsdoc: 'github:jsdoc3/jsdoc', 18 silly install resolved 'jaguarjs-jsdoc': 'github:davidshimjs/jaguarjs-jsdoc', 18 silly install resolved 'jsdoc-baseline': 'github:hegemonic/baseline' }, 18 silly install resolved engines: { node: '>= 0.8.0' }, 18 silly install resolved readme: '# node-libcurl\r\n\r\n\r\n\r\n\r\nLibcurl bindings for Node.js.\r\nBased on the work from jiangmiao/node-curl.\r\n\r\n## Quick Start\r\n\r\n### Install\r\n
npm install node-libcurl
\r\n\r\n### Simple Request\r\njavascript\r\nvar Curl = require( \'node-libcurl\' ).Curl;\r\n\r\nvar curl = new Curl();\r\n\r\ncurl.setOpt( \'URL\', \'www.google.com\' );\r\ncurl.setOpt( \'FOLLOWLOCATION\', true );\r\n\r\ncurl.on( \'end\', function( statusCode, body, headers ) {\r\n\r\n console.info( statusCode );\r\n console.info( \'---\' );\r\n console.info( body.length );\r\n console.info( \'---\' );\r\n console.info( this.getInfo( \'TOTAL_TIME\' ) );\r\n\r\n this.close();\r\n});\r\n\r\ncurl.on( \'error\', curl.close.bind( curl ) );\r\ncurl.perform();\r\n
\r\n\r\n### MultiPart Upload / HttpPost libcurl Option\r\n\r\njavascript\r\nvar Curl = require( \'node-libcurl\' ).Curl;\r\n\r\nvar curl = new Curl(),\r\n close = curl.close.bind( curl );\r\n\r\ncurl.setOpt( curl.option.URL, \'127.0.0.1/upload.php\' );\r\ncurl.setOpt( curl.option.HTTPPOST, [\r\n { name: \'input-name\', file: \'/file/path\', type: \'text/html\' },\r\n { name: \'input-name2\', contents: \'field-contents\' }\r\n]);\r\n\r\ncurl.on( \'end\', close );\r\ncurl.on( \'error\', close );\r\n
\r\n\r\nFor more examples check the examples folder.\r\n\r\n## API\r\n\r\n### Curl\r\n\r\n* events:\r\n * end - Called when the request is finished without errors\r\n * int statusCode Last received response code.\r\n * string|Buffer body If raw is set to true, a Buffer is passed instead of a string.\r\n * Array\