Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

175
Visualizações
change `msg.sender` in solidity and ether.js

I have Smartcontract with solidity . in this smart contract i have function with name makeMarketItem .

  function makeMarketItem(
        address nftContract,
        uint256 tokenId,
        uint256 price
    ) public payable nonReentrant {
        IERC721(nftContract).transferFrom(msg.sender, address(this), tokenId);
}

I call this function with ethers library in nodejs .

Inital this smart contract with ethers by this way :

static async Initial(): Promise<any> {

    let provider = new ethers.providers.JsonRpcProvider(config.contractConfig.url);
    const signer = provider.getSigner();

    this.tokenContract = new ethers.Contract(NFT.networks['5777'].address, NFT.abi, signer);
    this.dNFT = new ethers.Contract(DNFT.networks['5777'].address, DNFT.abi, signer);

}

i want to called that function by this way :

 transaction = this.dNFT.makeMarketItem(
                this.tokenContract.address,
                tokenId,
                price,
                {
                    value: listPricing.result
                }
            );

Problem: I need to change value of msg.sender .

How can I change msg.sender address ?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

I think the .connect() method is what you're looking for, you can use it to call a contract method from a particular address/signer:

const [owner, addr1] = await ethers.getSigners();
this.dNFT.connect(addr1).makeMarketItem(...);
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda