二期c++接口

Dependencies:   EthernetInterface mbed-rtos mbed uniqueCPUID

Fork of bcsdk by Heng Well

Committer:
webmaster
Date:
Fri Nov 03 01:07:32 2017 +0000
Revision:
10:aabd720e632c
publish v0.1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
webmaster 10:aabd720e632c 1 #include "Key.h"
webmaster 10:aabd720e632c 2
webmaster 10:aabd720e632c 3 string Key::listKeys()
webmaster 10:aabd720e632c 4 {
webmaster 10:aabd720e632c 5 string strJson = "";
webmaster 10:aabd720e632c 6
webmaster 10:aabd720e632c 7 MbedJSONValue val;
webmaster 10:aabd720e632c 8
webmaster 10:aabd720e632c 9 //serialize it into a JSON string
webmaster 10:aabd720e632c 10 strJson = val.serialize();
webmaster 10:aabd720e632c 11 if ("null" == strJson)
webmaster 10:aabd720e632c 12 {
webmaster 10:aabd720e632c 13 strJson = "{}";
webmaster 10:aabd720e632c 14 }
webmaster 10:aabd720e632c 15 //printf("json: %s\r\n", strJson.c_str());
webmaster 10:aabd720e632c 16
webmaster 10:aabd720e632c 17 string strRep = "";
webmaster 10:aabd720e632c 18 string strUrl = "/mockhsm/list-keys";
webmaster 10:aabd720e632c 19 client.http_post(strUrl,strJson,strRep);
webmaster 10:aabd720e632c 20 //cout<< "HTTP Response:\n" << strRep.length() << endl << strRep.c_str() << endl;
webmaster 10:aabd720e632c 21
webmaster 10:aabd720e632c 22 //////////////////////////////////////////////////////////////////////////
webmaster 10:aabd720e632c 23 // get http response content
webmaster 10:aabd720e632c 24 string content = client.get_content(strRep);
webmaster 10:aabd720e632c 25
webmaster 10:aabd720e632c 26 // decode content json
webmaster 10:aabd720e632c 27 MbedJSONValue valRep;
webmaster 10:aabd720e632c 28 parse(valRep,content.c_str());
webmaster 10:aabd720e632c 29
webmaster 10:aabd720e632c 30 int items = valRep["items"].size();
webmaster 10:aabd720e632c 31 //valRep.hasMember();
webmaster 10:aabd720e632c 32 string key_alias = getAlias();
webmaster 10:aabd720e632c 33 string str;
webmaster 10:aabd720e632c 34 for (int i = 0; i < items; i++)
webmaster 10:aabd720e632c 35 {
webmaster 10:aabd720e632c 36 string alias = "";
webmaster 10:aabd720e632c 37 if (valRep["items"][i]["alias"].serialize() != "null")
webmaster 10:aabd720e632c 38 {
webmaster 10:aabd720e632c 39 alias = valRep["items"][i]["alias"].get<std::string>();
webmaster 10:aabd720e632c 40 }
webmaster 10:aabd720e632c 41
webmaster 10:aabd720e632c 42
webmaster 10:aabd720e632c 43 if (alias == key_alias)
webmaster 10:aabd720e632c 44 {
webmaster 10:aabd720e632c 45 string xpub = valRep["items"][i]["xpub"].get<std::string>();
webmaster 10:aabd720e632c 46 setRootXpub(xpub);
webmaster 10:aabd720e632c 47 }
webmaster 10:aabd720e632c 48 }
webmaster 10:aabd720e632c 49
webmaster 10:aabd720e632c 50 return strJson;
webmaster 10:aabd720e632c 51 }