【お知らせ】この部分は英語原文のみでの提供となります。何卒ご了承ください。
2.1.21.11 okutil_http_get
Contents
Description
get a string from a web service
Syntax
int okutil_http_get( LPCSTR lpcszURL, string * pstrResult, int nConnectTimeout = 0, int nResponseTimeout = 0 )
Parameters
- lpcszURL
- [input] the web service URL
- pstrResult
- [output] result from the call
- nConnectTimeout
- [input] optional, in seconds
- nResponseTimeout
- [input] optional, in seconds
Return
0 if succcess, otherwise an negative error code
Examples
EX1
void test_rest_service() { string result; int err = okutil_http_get("http://services.groupkt.com/state/get/IND/UP", &result); if( err ) printf("Error %d\n", err); else //no err { printf("%s\n", result); Tree tr; JSON.FromString(tr, result); out_tree(tr); } }
EX2
//assume default new project with active book void so2() { string url = "http://api.openweathermap.org/pollution/v1/so2/0.0,10.0/2016Z.json?appid=f80146dfac8f9ecbc2bbcc1cf97465cb"; string strJS; int err = okutil_http_get(url, &strJS); if( err != 0 ) return; Tree tr; JSON.FromString(tr, strJS); Worksheet wks = Project.ActiveLayer(); Column col1 = wks.Columns(0); Column col2 = wks.Columns(1); vectorbase &v1 = col1.GetDataObject(); vectorbase &v2 = col2.GetDataObject(); JSON.TreeToVector(tr.data, v1, "pressure"); JSON.TreeToVector(tr.data, v2, "value"); }
EX3
#include <ocu.h> //for ocu_url_encode void yy() { string url ="https://query.yahooapis.com/v1/public/yql?q="; string strSearch = "select item.condition from weather.forecast where woeid = 2487889"; ocu_url_encode(&strSearch); url += strSearch; url += "&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys"; string strJS; int err = okutil_http_get(url, &strJS); if( err != 0 ) return; Tree tr; JSON.FromString(tr, strJS); out_tree(tr); }
Remark
See Also
Header to Included
origin.h