私が行っているリクエストに何か問題があり、それを理解できません。API仕様によると、すべてが整っているようです。
コードは次のとおりです。
var request = require('https').request;
var opts = {
host: 'intersango.com',
method: 'GET',
path: '/api/ticker.php',
port: 443,
accept: '*/*',
headers: { 'User-Agent': 'Mozilla/5.0 (X11; Linux i686; rv:10.0) Gecko/20100101 Firefox/10.0' } };
var req = request(opts, function (result) {
result.setEncoding('utf8');
var buffer = '';
result.on('data', function(data) {
buffer += data;
});
result.on('end', function() {
console.log('<- Received ' + buffer.length + ' bytes');
var data = JSON.parse(buffer);
console.log(data);
});
});
req.on('error', function(e) {
console.log('warning: problem with request: ' + e.message);
});
console.log('-> ' + opts['method'] + ' ' + opts['host'] + ':' + opts['port'] + opts['path']);
req.end();
出力は次のとおりです。
$> node test.intersango.js
-> GET intersango.com:443/api/ticker.php
warning: problem with request: socket hang up
興味深いことに、ブラウザーでhttps://intersango.com/api/ticker.phpにアクセスしても問題ありませんが、単にintersango.com:443/api/ticker.phpにアクセスした場合は問題ありません。他のポートをいくつか試しましたが、warning: problem with request: connect ECONNREFUSED
注:POSTを試しても役に立ちません