2014-02-09 34 views
2

我試圖用硬幣-E API與node.js的應用程序,但我有經過驗證的POST請求的麻煩。我有一個請求,用Python編寫的位置:urllib2.Request後相當於在node.js中

post_args['method'] = method   
post_args['nonce'] = nonce   
post_data = urllib.urlencode(post_args) 
required_sign = hmac.new(PRIVATE_KEY, post_data, hashlib.sha512).hexdigest() 
headers = {} 
headers['key'] = PUBLIC_KEY 
headers['sign'] = required_sign 
url_request_object = urllib2.Request("%s/%s" % (BASE_API_URL,url_suffix), 
           post_data, 
           headers)  
response = urllib2.urlopen(url_request_object)  


try: 
    response_content = response.read() 
    response_json = json.loads(response_content) 
    print response_json 
finally: 
    response.close() 

,這是Node.js的代碼,我已經寫在試圖做同樣的事情:

var request = require('request'); 
var querystring = require('querystring'); 
var crypto = require('crypto'); 

var post_args = {}; 
post_args['nonce'] = nonce; 
post_args['method'] = method; 
var post_data = querystring.stringify(postdata); 

var hasher = crypto.createHmac('sha512', PRIVATE_KEY); 
hasher.update(post_data); 
var required_sign = hasher.digest('hex'); 

var headers = {}; 

headers['key'] = PUBLIC_KEY; 
headers['sign'] = required_sign; 

var options = { 
    uri: url, 
    qs: post_data, 
    method: 'POST', 
    headers: headers 
}; 

request(options, function(error, response, body){ 
    console.log(body); 
}); 

想看看是否有人可以告訴我在python中創建的帖子與在node.js中創建的帖子之間有什麼區別,或者是否有人可以幫助我設置對node.js中的coin-e API的post請求。

這裏是硬幣e API的鏈接:https://www.coins-e.com/exchange/api/documentation/ 關於如何格式化已認證的請求的說明大約是在入口6之前的頁面的一半。感謝您的幫助!

回答

0

我沒有考慮在那裏測試,但看起來它應該是

var post_data = querystring.stringify(post_args);