0xorderbuilder 中文文档教程

发布于 6年前 浏览 26 项目主页 更新于 3年前

0xOrderBuilder

用于构建订单以使用 0x 协议的库。

Types

  • ZeroExOrderBuilder: main class with the static methods:
  • buildQuoteProviderOrder: creating a order to use in Quote Provider relayer strategy. A relayer will be called to get conversion rate and fees.
  • buildSignedOrder: signing a order. You can use the order returned in previous method.
  • EthNetwork: enum, used to inform the desired Ethereum network.

Installation

npm install 0xorderbuilder --save

Use

导入

import { ZeroExOrderBuilder, EthNetwork } from "0xorderbuilder";
import { BigNumber } from "bignumber.js"; // used as parameter in buildQuoteProviderOrder method

buildQuoteProviderOrder

    static buildQuoteProviderOrder(maker: string, makerTokenAddress: string, takerTokenAddress: string, makerTokenAmount: BigNumber, 
        milisecondsToExpire: number, relayerUrl: string, network: EthNetwork): Promise<Order>;
  • maker: yours eth wallet address;
  • makerTokenAddress: the token address you wish to sell;
  • takerTokenAddress: the token address you wish to buy;
  • makerTokenAmount: the amount you wish to sell (in base units, e.g.: 1 ZRX => new BigNumber(1000000000000000000));
  • milisecondsToExpire: used to calculate the returned order expiration date;
  • relayerUrl: the relayer addres used to get conversion rate and fee;
  • network: the desired Ethereum network
  • return: a promise that will be return a JSON representing the order.

buildSignedOrder

    static buildSignedOrder(order: Order, privateKey: string): SignedOrder;
  • order: the unsigned order;
  • privateKey: the private key of the maker wallet. Note: this private WILL NOT be transfer to relayer or any other;
  • return: the signed order.

示例

import { ZeroExOrderBuilder, EthNetwork } from "0xorderbuilder";
import { BigNumber } from "bignumber.js";

function testZeroExOrderBuilder() {
    ZeroExOrderBuilder.buildQuoteProviderOrder("0xf60345bcff9feedb98bbdfc996b33cba00ee2c75", "0x6ff6c0ff1d68b964901f986d4c9fa3ac68346570", 
        "0xd0a1e359811322d97991e03f863a0c30c2cf029c", new BigNumber(1000000000000000000), 10000, 
        "http://localhost:3000/api/v0", EthNetwork.Kovan).then((order) =>
    {
        const signedOrder = ZeroExOrderBuilder.buildSignedOrder(order, "0x5edd9d13a5d62821bbda8ac6da7d7ca69a1b540dc99ac9232fefc04d09e28055");
        console.log(JSON.stringify(signedOrder));
    });

}

testZeroExOrderBuilder();

0xOrderBuilder

Llibrary for building orders to use the 0x protocol.

Types

  • ZeroExOrderBuilder: main class with the static methods:
  • buildQuoteProviderOrder: creating a order to use in Quote Provider relayer strategy. A relayer will be called to get conversion rate and fees.
  • buildSignedOrder: signing a order. You can use the order returned in previous method.
  • EthNetwork: enum, used to inform the desired Ethereum network.

Installation

npm install 0xorderbuilder --save

Use

Import

import { ZeroExOrderBuilder, EthNetwork } from "0xorderbuilder";
import { BigNumber } from "bignumber.js"; // used as parameter in buildQuoteProviderOrder method

buildQuoteProviderOrder

    static buildQuoteProviderOrder(maker: string, makerTokenAddress: string, takerTokenAddress: string, makerTokenAmount: BigNumber, 
        milisecondsToExpire: number, relayerUrl: string, network: EthNetwork): Promise<Order>;
  • maker: yours eth wallet address;
  • makerTokenAddress: the token address you wish to sell;
  • takerTokenAddress: the token address you wish to buy;
  • makerTokenAmount: the amount you wish to sell (in base units, e.g.: 1 ZRX => new BigNumber(1000000000000000000));
  • milisecondsToExpire: used to calculate the returned order expiration date;
  • relayerUrl: the relayer addres used to get conversion rate and fee;
  • network: the desired Ethereum network
  • return: a promise that will be return a JSON representing the order.

buildSignedOrder

    static buildSignedOrder(order: Order, privateKey: string): SignedOrder;
  • order: the unsigned order;
  • privateKey: the private key of the maker wallet. Note: this private WILL NOT be transfer to relayer or any other;
  • return: the signed order.

Example

import { ZeroExOrderBuilder, EthNetwork } from "0xorderbuilder";
import { BigNumber } from "bignumber.js";

function testZeroExOrderBuilder() {
    ZeroExOrderBuilder.buildQuoteProviderOrder("0xf60345bcff9feedb98bbdfc996b33cba00ee2c75", "0x6ff6c0ff1d68b964901f986d4c9fa3ac68346570", 
        "0xd0a1e359811322d97991e03f863a0c30c2cf029c", new BigNumber(1000000000000000000), 10000, 
        "http://localhost:3000/api/v0", EthNetwork.Kovan).then((order) =>
    {
        const signedOrder = ZeroExOrderBuilder.buildSignedOrder(order, "0x5edd9d13a5d62821bbda8ac6da7d7ca69a1b540dc99ac9232fefc04d09e28055");
        console.log(JSON.stringify(signedOrder));
    });

}

testZeroExOrderBuilder();
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文