Bitcoin Forum
August 24, 2024, 01:48:49 PM *
News: Latest Bitcoin Core release: 27.1 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: API в Cryptsy на PHP  (Read 1069 times)
unzero (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
February 11, 2014, 03:43:14 PM
 #1

Все привет. Я с php знаком слабо, сильно тухлыми помидорами просьба не кидать. Поднял денвер, накидал маленькую php страничку из массива, который должен выводить цену покупки и цену продажи. Доходит до 9й валюты и выдает ошибку 30-секундного таймаута. Это нормально? Или я что-то делаю не так?

<?php

function api_query($method, array $req = array()) {
        // API settings
        $key = '***';
        $secret = '***';
 
        $req['method'] = $method;
        $mt = explode(' ', microtime());
        $req['nonce'] = $mt[1];
       
        // generate the POST data string
        $post_data = http_build_query($req, '', '&');

        $sign = hash_hmac("sha512", $post_data, $secret);
 
        // generate the extra headers
        $headers = array(
                'Sign: '.$sign,
                'Key: '.$key,
        );
 
        // our curl handle (initialize if required)
        static $ch = null;
        if (is_null($ch)) {
                $ch = curl_init();
                curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; Cryptsy API PHP client; '.php_uname('s').'; PHP/'.phpversion().')');
        }
        curl_setopt($ch, CURLOPT_URL, 'https://api.cryptsy.com/api');
        curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
 
        // run the query
        $res = curl_exec($ch);

        if ($res === false) throw new Exception('Could not get reply: '.curl_error($ch));
        $dec = json_decode($res, true);
        if (!$dec) throw new Exception('Invalid data received, please make sure connection is working and requested API exists');
        return $dec;
}

$n = 26;
while ($n <= 100) {
$result = api_query("marketorders", array("marketid" => $n));
echo "<pre>".print_r($result["return"][sellorders][0][sellprice], true)."</pre>";
echo "<pre>".print_r($result["return"][buyorders][0][buyprice], true)."</pre>";
echo "<br>";
$n = $n + 1;
}
sevenup
Jr. Member
*
Offline Offline

Activity: 69
Merit: 5



View Profile WWW
February 15, 2014, 12:13:02 PM
 #2

getmarkets посмотри в апи на криптси
unzero (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
February 15, 2014, 02:38:24 PM
 #3

getmarkets посмотри в апи на криптси
Хмм... Насколько понимаю, этот метод выдает последнюю цену, а мне нужно узнать моментальный разлет цен для вымпела/мегафона. Но спасибо за ответ, хоть кто-то отписался...
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!