怎么 http 的GET方式请求和接收API接口的数据
如何 http 的GET方式请求和接收API接口的数据?
如题,我现在想用http的Get请求方式来请求和接收数据,请求的Url是http://api.xiaoi.com/apiserver/rest.do?api_key=100&method=users.getInfo&fields=uid,nickName,headImage,sex&format=JSON&uid='" + UserId + "&sig='" + sigMd5 + ",返回的数据格式为Json,希望高手能指点一下,如何能够获取数据,在线等!
最好能有例子,谢谢!
------解决方案--------------------
http://msdn.microsoft.com/en-us/library/aa384105(v=vs.85).aspx
获取返回,然后自己parse JSON数据
------解决方案--------------------
"返回的数据格式为Json",你是要解析Json数据吗,Json对应的一个dll里面的接口可以用来解析Json所有数据的,一般是map形式
------解决方案--------------------
如题,我现在想用http的Get请求方式来请求和接收数据,请求的Url是http://api.xiaoi.com/apiserver/rest.do?api_key=100&method=users.getInfo&fields=uid,nickName,headImage,sex&format=JSON&uid='" + UserId + "&sig='" + sigMd5 + ",返回的数据格式为Json,希望高手能指点一下,如何能够获取数据,在线等!
最好能有例子,谢谢!
------解决方案--------------------
http://msdn.microsoft.com/en-us/library/aa384105(v=vs.85).aspx
获取返回,然后自己parse JSON数据
------解决方案--------------------
"返回的数据格式为Json",你是要解析Json数据吗,Json对应的一个dll里面的接口可以用来解析Json所有数据的,一般是map形式
------解决方案--------------------
- C/C++ code
void CWeb::HttpContentByGet(CString strHttpName, CString & strResult) { CInternetSession sess; CHttpFile* pHttpFile = NULL; CString strSentence; try { pHttpFile=(CHttpFile*)sess.OpenURL(strHttpName); } catch(...) { //throw; } if(pHttpFile) { DWORD dwStatus; DWORD dwBuffLen = sizeof(dwStatus); BOOL bSuccess = pHttpFile->QueryInfo(HTTP_QUERY_STATUS_CODE|HTTP_QUERY_FLAG_NUMBER, &dwStatus, &dwBuffLen); if(bSuccess && dwStatus>=200 && dwStatus<300) // status codes:200-299 Success { while(pHttpFile->ReadString(strSentence)) { strResult += strSentence; } } else { strResult = "ERROR"; } pHttpFile->Close(); delete pHttpFile; } sess.Close(); }
------解决方案--------------------
https://www.ibm.com/developerworks/cn/web/wa-lo-json/
json解析应该算很简单的,如果知道对方的数据格式,就更容易
麻烦一点的是,可能需要对返回数据进行必要的编码转换