我正在开发一种分页方法,但是当token数量超过150时,返回这个错误:FunctionCallError(HostError(GasLimitExceeded))
我使用的命令:near view nativodeploy.testnet get_ids_onsale '{"tokens":30}' --accountId nativodeploy.testnet
代码:这里我只恢复一个带有 Id 标记的向量,用于在另一种方法中启动“from_index”
pub fn get_ids_onsale(&self,tokens:u64) -> Vec<u64> {
let mut vectIDs = vec![];
let mut _tokfound =0;
let total = self.get_on_total_toks();
vectIDs.push(0);
for x in 0..total {
if x>= total.clone() {
break;
}
let mut token =self.get_token(x.to_string().clone());
if token.on_sale{
_tokfound+=1;
if _tokfound== tokens {
vectIDs.push( token.token_id.parse::<u64>().unwrap() );
_tokfound=0;
}
}
if( _tokfound == tokens ){break; }
}
vectIDs
}
如果我使用电话,我会得到: {"ExecutionError":"Exceeded the prepaid gas."}
即使我使用 --gas=300000000000000,我也会得到:{"ExecutionError":"Exceeded the maximum amount of gas allowed to burn per contract."}