javascript - TypeError : curl. setopt 不是一个函数]

标签 javascript node.js node-libcurl

我是一个新手,试图创建一个基于 poloniex.js API 的应用程序,但出现错误-TypeError:curl.setopt 不是函数] set node-curl(不工作)和 node-libcurl(部分工作,但是函数似乎错误地表达了)两个 curl curl之间有点混淆。

    'use strict';

    var autobahn = require('autobahn'),
    crypto = require('crypto'),
    async = require('async'),
    https = require('https'),
    nonce = require('nonce')(),
    querystring = require('querystring'),
    Curl = require('node-libcurl').Curl,
    microtime = require('microtime'),
    events = require('events'),
    util = require('util');

    var Poloniex = function Poloniex() {};

    Poloniex._query_tradeApi = function (req, callback) {
    var post_data,
    hash = crypto.createHmac('sha512', "key-key-key"),
    sign,
    received,
    headers;

    nonce = (new Date()).getTime() * 1000;
    post_data = querystring.stringify(req);
    hash.update(post_data);
    sign = hash.digest("hex");

    try {
    headers = [ 'Key: ' + "SECRET-SECRET-SECRET", 'Sign: ' + sign ];

    var curl = new Curl(),
    close = curl.close.bind( curl );
    curl.setopt('URL', 'https://poloniex.com/tradingApi/');
    curl.setopt('POST', 1);
    curl.setopt('POSTFIELDS', post_data);
    curl.setopt('HTTPHEADER', headers);

    received = '';

    curl.on('data', function (chunk) {
        received += chunk;
        return chunk.length;
    });

    curl.on('header', function (chunk) {
        return chunk.length;
    });

    curl.on('error', curl.close.bind( curl ),function (e) {
        console.error('exchanges/poloniex', '_query_tradeApi', e, 
    req, e.stack);
        callback(e, undefined);
        curl.perform();
        curl.close();
    });

    curl.on('end', function () {
        try {

            var data = JSON.parse(received);
            callback(undefined, data);

        } catch (ex) {
            console.error('exchanges/poloniex', '_query_tradeApi', 
    ex,     req, ex.stack);
            callback(ex, received);
        }

        curl.close();
    });

    curl.perform();

    } catch (ee) {
    console.error('exchanges/poloniex', '_query_tradeApi', ee, 
    req,  ee.stack);
    callback(ee, received);
    }
    };

最佳答案

所需的语法是curl.setOpt,而不是curl.setopt。

关于javascript - TypeError : curl. setopt 不是一个函数],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34137823/

相关文章:

javascript - 基于动态生成的文本和特定图案的颜色 li 元素

javascript - 如何使用带有 for 循环的 Node.js 和 Redis 分配全局变量?

node.js - 如何为 hubot 设置 node_path

javascript - 从 node-libcurl 获取状态、正文和 header

javascript 自动完成关闭并出现视觉错误

javascript - Angular 1 的初始化代码应该放在哪里?

javascript - 从 Google 电子表格中获取数据?

electron - 在Mac和Windows上均无法为Electronic 5.0.10安装node-libcurl

node.js - 由于node-libcurl,命令 npm install 失败

javascript - 基于多个因素转换 Javascript 数组