Помогите с JavaScript перевести в обычный POST запрос.

Vasyl1

Client
Регистрация
11.12.2016
Сообщения
203
Благодарностей
23
Баллы
18
Помогите пожалуйста вот этот код на JavaScript,
Код:
import crypto from 'crypto';
import R from 'ramda';
import Axios from 'axios';
import querystring from 'querystring';
const client = Axios.create({ baseURL: 'https://api.bilaxy.com' });
const key = '';
const secret = '';

function sha1(input) {
  return crypto
    .createHash('sha1')
    .update(input)
    .digest('hex');
}

async function trade() {
  const symbol = 65;
  const type = 'buy';
  const price = '0.0000701';
  const amount = '2212.86';
  const queryParams = [
    `symbol=${symbol}`,
    `type=${type}`,
    `price=${price}`,
    `amount=${amount}`,
    `id=${3540139}`,
    `key=${key}`,
    `secret=${secret}`,
  ];
  const sign = R.pipe(
    R.sortBy(R.identity),
    R.join('&'),
    sha1,
  )(queryParams);
  const foo = await client.post(
    '/v1/trade',
    querystring.stringify({
      symbol,
      type,
      price,
      amount,
      key,
      sign,
    }),
  );
  console.log(foo.data);
}

async function tradeView() {
  try {
    const id = 3540139;
    const queryParams = [`id=${id}`, `key=${key}`, `secret=${secret}`];
    const sign = R.pipe(
      R.sortBy(R.identity),
      R.join('&'),
      sha1,
    )(queryParams);
    const foo = await client.post(
      '/v1/trade_view',
      querystring.stringify({
        id,
        key,
        sign,
      }),
    );
    console.log(foo.data);
  } catch (error) {
    console.log(error);
  }
}

async function tradeList() {
  try {
    const symbol = 108;
    const queryParams = [`key=${key}`, `secret=${secret}`, `symbol=${symbol}`];
    const sign = R.pipe(
      R.sortBy(R.identity),
      R.join('&'),
      sha1,
    )(queryParams);
    const foo = await client.post(
      '/v1/trade_list',
      querystring.stringify({
        symbol,
        key,
        sign,
      }),
    );
    console.log(foo);
  } catch (error) {
    console.log(error);
  }
}

tradeList();
перевести в обычный кубик POST запрос. Просто не могу понять что к чему, и какие данные нужно переобразовывать в sha1

Например: мои даные
symbol=15
amount=12
price=0.005
type=buy
key=ab24c7dee854e5d1db86d657ff2135d78
secret=4563287f6c2f0d14aa97c8e4d4b7865c
 

Alex733

Client
Регистрация
27.11.2017
Сообщения
330
Благодарностей
243
Баллы
43
Может и возможно перевести в обычный кубик, но быстрее будет разобраться в C# с подменой запроса. В траффик мониторе смотришь, какие данные нужно заменить и в соответствии с этим делать замену. Там кубик будет может с 10-к строк.
 

Vasyl1

Client
Регистрация
11.12.2016
Сообщения
203
Благодарностей
23
Баллы
18
Может и возможно перевести в обычный кубик, но быстрее будет разобраться в C# с подменой запроса. В траффик мониторе смотришь, какие данные нужно заменить и в соответствии с этим делать замену. Там кубик будет может с 10-к строк.
А можете показать 1 пример кубика C# как правильно все это подставить! Просто как это все перевести в пост кубик или в С# не имею понятия, а с С# работал уже и если будет пример, то раздерусь!
 

Alex733

Client
Регистрация
27.11.2017
Сообщения
330
Благодарностей
243
Баллы
43
Примерно так:

C#:
 instance.ChangeRequest("адрес запроса в regex",
                  // Что ищем
                     new String[]{"symbol=15","amount=12"},
                 // На что меняем
                     new String[]{"symbol=17","amount=14"},false);

Сработает если длина строки для поиска = длине строки для замены.
Вставить нужно перед отправкой запроса.
 

Vasyl1

Client
Регистрация
11.12.2016
Сообщения
203
Благодарностей
23
Баллы
18
Примерно так:

C#:
 instance.ChangeRequest("адрес запроса в regex",
                  // Что ищем
                     new String[]{"symbol=15","amount=12"},
                 // На что меняем
                     new String[]{"symbol=17","amount=14"},false);

Сработает если длина строки для поиска = длине строки для замены.
Вставить нужно перед отправкой запроса.
Мне с того всего что выше, нужно отправить Пост запрос, чтобы создать ордер на бирже bilaxy.com . Только я не могу понять что должно быть в каких данных и какие данные нужно переобразовывать в sha1 .
вот их api https://bilaxy.com/api#info
 
Последнее редактирование:

Roman*

Client
Регистрация
25.09.2013
Сообщения
1 657
Благодарностей
656
Баллы
113
Лучше делать через апи это все дело, если он работает нормально и лимитов особо нет.
 

Vasyl1

Client
Регистрация
11.12.2016
Сообщения
203
Благодарностей
23
Баллы
18
Лучше делать через апи это все дело, если он работает нормально и лимитов особо нет.
да я так и хочу делать только не понимаю как правильно создать пост запрос, чтобы создать заявку на продажу или покупку.
 

Roman*

Client
Регистрация
25.09.2013
Сообщения
1 657
Благодарностей
656
Баллы
113
да я так и хочу делать только не понимаю как правильно создать пост запрос, чтобы создать заявку на продажу или покупку.
Думаю нужно заказать, кто потратит время на изучении их апи.
 

Alex733

Client
Регистрация
27.11.2017
Сообщения
330
Благодарностей
243
Баллы
43

Vasyl1

Client
Регистрация
11.12.2016
Сообщения
203
Благодарностей
23
Баллы
18

Alex733

Client
Регистрация
27.11.2017
Сообщения
330
Благодарностей
243
Баллы
43
Во 2-м пункте API описано, как все делать (Там еще ссылка есть, которая без авторизации не открывается, по которой можно интегрировать АПИ). Соединяете в строку через & все данные и от этой строки берете sha1. Для отладки создавайте цену ордера, которая выше или ниже рынка, на столько, что бы он не сработал. Шлете на биржу, читаете ответ, исправляете код, пока ошибки не прекратятся.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)