Моралис Web3API реагирует на крюк, возвращающий 400

#javascript #reactjs #web3 #moralis

Вопрос:

По какой-то причине мой getNFTsForContract вызов web3API продолжает возвращать 400 секунд, но я не могу сказать, почему. Вот что я использую для совершения звонка:

 const { fetch, data, error, isLoading } = useMoralisWeb3ApiCall(
    Web3Api.account.getNFTsForContract,
    {
      chain: networkId,
      address: user,
      token_address: retroCatsAddress,
    }
  )
 

И похоже, что в инструментах проверки моего браузера тело запроса вызова API в порядке. Я также настроил MoralisProvider следующим образом:

 ReactDOM.render(
  <MoralisProvider
    appId={process.env.REACT_APP_MORALIS_APP_ID}
    serverUrl={process.env.REACT_APP_MORALIS_SERVER_URL}
  >
    <App />
  </MoralisProvider>,
  document.getElementById('root')
)
 

Но мне интересно, не упускаю ли я чего-нибудь. Параметры, которые я передаю, следующие:

address : 0x643315C9Be056cDEA171F4e7b2222a4ddaB9F88D
chain : 4
token_address : 0xc8d8B5a3ED2aA35Df8F1781F2B06A14Fb0411bc8

И я убедился, что у рассматриваемого адреса есть NFT на token_address.

Так что же я упускаю?

Ответ №1:

Вам нужно предоставить цепочку в виде строки и в шестнадцатеричной форме:

 const { fetch, data, error, isLoading } = useMoralisWeb3ApiCall(
    Web3Api.account.getNFTsForContract,
    {
      chain: "0x4",
      address: user,
      token_address: retroCatsAddress,
    }
  )
 

Комментарии:

1. Спасибо! Похоже, что это также должна быть строка в шестнадцатеричной форме. Поэтому мне нужно было преобразовать его из «4» в «0x4»