get_urljson
This commit is contained in:
@@ -94,20 +94,20 @@ void *filestr(long *allocsizep,char *_fname)
|
|||||||
*allocsizep = 0;
|
*allocsizep = 0;
|
||||||
fname = malloc(strlen(_fname)+1);
|
fname = malloc(strlen(_fname)+1);
|
||||||
strcpy(fname,_fname);
|
strcpy(fname,_fname);
|
||||||
retptr = loadfile(fname,&buf,&filesize,allocsizep);
|
retptr = loadfile(fname,(uint8_t **)&buf,&filesize,allocsizep);
|
||||||
free(fname);
|
free(fname);
|
||||||
return(retptr);
|
return(retptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
char *send_curl(char *url)
|
char *send_curl(char *url)
|
||||||
{
|
{
|
||||||
long fsize; char curlstr[1024],*fname = "/tmp/oraclefeed.json"
|
long fsize; char curlstr[1024],*fname = "/tmp/oraclefeed.json";
|
||||||
sprintf(curlstr,"curl --url \"%s\" > %s",url);
|
sprintf(curlstr,"curl --url \"%s\" > %s",url);
|
||||||
system(curlstr);
|
system(curlstr);
|
||||||
return(filestr(&fsize,fname));
|
return(filestr(&fsize,fname));
|
||||||
}
|
}
|
||||||
|
|
||||||
cJSON *url_json(char *url)
|
cJSON *get_urljson(char *url)
|
||||||
{
|
{
|
||||||
char *jsonstr; cJSON *json = 0;
|
char *jsonstr; cJSON *json = 0;
|
||||||
if ( (jsonstr= send_curl(url)) != 0 )
|
if ( (jsonstr= send_curl(url)) != 0 )
|
||||||
@@ -123,7 +123,7 @@ int32_t main(int32_t argc,char **argv)
|
|||||||
{
|
{
|
||||||
cJSON *pjson,*bpi,*usd;
|
cJSON *pjson,*bpi,*usd;
|
||||||
printf("Powered by CoinDesk (%s)\n","https://www.coindesk.com/price/");
|
printf("Powered by CoinDesk (%s)\n","https://www.coindesk.com/price/");
|
||||||
if ( (pjson= url_json("http://api.coindesk.com/v1/bpi/currentprice.json","")) != 0 )
|
if ( (pjson= get_urljson("http://api.coindesk.com/v1/bpi/currentprice.json","")) != 0 )
|
||||||
{
|
{
|
||||||
if ( (bpi= jobj(pjson,"bpi")) != 0 && (usd= jobj(bpi,"USD")) != 0 )
|
if ( (bpi= jobj(pjson,"bpi")) != 0 && (usd= jobj(bpi,"USD")) != 0 )
|
||||||
printf("BTC/USD %.4f\n",jdouble(usd,"rate_float"));
|
printf("BTC/USD %.4f\n",jdouble(usd,"rate_float"));
|
||||||
|
|||||||
Reference in New Issue
Block a user