【发布时间】:2021-08-05 09:24:19
【问题描述】:
我想从 BitZ api 获得任何加密货币的价格。 我有这样的代码:
string coinName;
string jsonURL = "https://apiv2.bitz.com/Market/coinRate?coins=" + coinName;
我会给变量 coinName 我想要的值,例如 coinName = "btc" 我想要 USDT 的价格 这里的问题是它包含硬币名称的 Json 结构如果对每个硬币都这样做,我最终会得到大量的代码行,
public class Btc
{
public string usdt { get; set; }
}
public class Data
{
public Btc btc { get; set; }
}
public class Root
{
public int status { get; set; }
public string msg { get; set; }
public Data data { get; set; }
public int time { get; set; }
public string microtime { get; set; }
public string source { get; set; }
}
与 Bittrex api 不同,例如,使用来自统一商店的 JsonDotNet 资产更易于阅读,并且:
BittrexJsonUrl = "https://api.bittrex.com/api/v1.1/public/getticker?market=USDT-" + coinName;
然后我使用这段代码来获取数据:
private IEnumerator GetData()
{
/////bittrex
UnityWebRequest request = UnityWebRequest.Get(BittrexJsonUrl);
yield return request.SendWebRequest();
if (request.error == null)
{
Bittrex_proccessJsonData(request.downloadHandler.text);
}
else
{
Debug.Log("Something went wrong!!");
}
}
private void Bittrex_proccessJsonData (string _url) {
var _bittrexJsonData = JsonConvert.DeserializeObject<BittrexJsonData>(_url);
bittrexPrice = _bittrexJsonData.result.Last;
}
这与 bittrex 的 Json 结构完美配合,因为它不包含硬币名称,我所做的只是更改 Json URL。 现在我想为 BitZ 做同样的事情,如果你知道如何请帮助:) 提前谢谢你。
【问题讨论】: