Ir para conteúdo
Fórum Script Brasil
  • 0

Api - MercadoBitcoin em PHP


felipeferri

Pergunta

Bom dia Pessoal,

 

Estou entrando no mundo do Bitcoin, e utilizo a exchange Mercado Bitcoin. Eles disponibilizam uma API só que está em Python, consegui desenvolver em Python e está funcionando perfeitamente, agora estou tentando criar essa API mas em PHP só que tem alguma coisa que não está batendo. Vocês podem me ajudar?

 

Segue o código em Python que está funcionando e o código em PHP em andamento porém não está funcionando.

 

Código em Python como seria o equivalente em PHP.

 

# -*- coding: utf-8 -*-

import hashlib
import hmac
import httplib
import json
import urllib
import time
import sys
import decimal

from collections import OrderedDict


# Constantes
MB_TAPI_ID = '******************************'
MB_TAPI_SECRET = '*********************************************************'
REQUEST_HOST = 'www.mercadobitcoin.com.br'
REQUEST_PATH = '/tapi/v3/'

# Nonce
# Para obter variação de forma simples
# timestamp pode ser utilizado:
#     import time
#     tapi_nonce = str(int(time.time()))
tapi_nonce = 1

# Ordem de compra
params = {
                       'tapi_method': 'place_buy_order',
                         'tapi_nonce': '',
                         'coin_pair': 'BRLLTC',
                         'quantity': '0.01',
                          'limit_price': '100'
}


params = urllib.urlencode(params)

# Gerar MAC
params_string = REQUEST_PATH + '?' + params
H = hmac.new(MB_TAPI_SECRET, digestmod=hashlib.sha512)
H.update(params_string)
tapi_mac = H.hexdigest()

# Gerar cabeçalho da requisição
headers = {
                       'Content-type': 'application/x-www-form-urlencoded',
                       'TAPI-ID': MB_TAPI_ID,
                        'TAPI-MAC': tapi_mac
}

# Realizar requisição POST
try:
           conn = httplib.HTTPSConnection(REQUEST_HOST)
           conn.request("POST", REQUEST_PATH, params, headers)

         # Print response data to console
         response = conn.getresponse()
          response = response.read()

        # É fundamental utilizar a classe OrderedDict para preservar a ordem dos elementos
        response_json = json.loads(response, object_pairs_hook=OrderedDict)
       print ("status: %s" % response_json['status_code'])
       print(json.dumps(response_json, indent=4))
finally:
         if conn:
                 conn.close()

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...