首页 > 解决方案 > opensea 使用元掩码投标

问题描述

    const NetworkToUse = process.env.REACT_APP_NETWORK;
    const mnemonicWalletSubprovider = new MnemonicWalletSubprovider({
    mnemonic: process.env.REACT_APP_MNEMONIC,
    });

    const infuraRpcSubprovider = new RPCSubprovider({
    rpcUrl: `https://${NetworkToUse}.infura.io/v3/${process.env.REACT_APP_INFURA_KEY}`,
    });

    const providerEngine = new Web3ProviderEngine();
    if (window.ethereum) {
    providerEngine.addProvider(new SignerSubprovider(window.ethereum));
    }
    // providerEngine.addProvider(mnemonicWalletSubprovider);
    providerEngine.addProvider(infuraRpcSubprovider);
    providerEngine.start();

    const seaport = new OpenSeaPort(
    providerEngine,
    {
        networkName: NetworkToUse === "mainnet" ? Network.Main : Network.Rinkeby,
        apiKey: process.env.REACT_APP_API_KEY,
    },
    (arg) => {
        console.log("From OpenSeaPort CB:");
        console.log(arg);
    }
    );




    const placeBidMetaMask = async (order) => {
        setIsProcessing(true);

        if (typeof window.ethereum === "undefined") {
        setError("Please make sure you have MetaMask installed!");
        return;
        }

        if (!bidPrice || bidPrice < asset.price) {
        setError("Insufficient Funds!");
        return;
        }

        const { tokenId, tokenAddress } = order.asset;

        try {
        const [userAccount] = await window.ethereum.request({
            method: "eth_requestAccounts",
        });

        const offer = await seaport.createBuyOrder({
            asset: {
            tokenId,
            tokenAddress,
            schemaName: asset.details.assetContract.schemaName,
            },
            accountAddress: userAccount,
            startAmount: bidPrice,
        });

        console.log(offer);

        setMessage("Buy Order Created");
        } catch (err) {
        setError(err.message);
        console.log(err.message);
        } finally {
        setIsProcessing(false);
        }
    };

我正在使用 metamask 作为 wellet 进行投标

嗨,我正在使用上面的代码在 opensea 上出价它正在工作,但是,我正在使用我的个人 MNEMONIC 但是,我无法实时从用户元掩码钱包中获得这个。

有没有其他方法可以出价。

我正在使用 metamask 作为 wellet 进行投标

嗨,我正在使用上面的代码在 opensea 上出价它正在工作,但是,我正在使用我的个人 MNEMONIC 但是,我无法实时从用户元掩码钱包中获得这个。

有没有其他方法可以出价。

标签: javascriptmetamask

解决方案


推荐阅读