add Json::array & Json::object function
This commit is contained in:
parent
6733757d09
commit
549df3df58
|
|
@ -1907,7 +1907,7 @@ namespace easy2d
|
|||
{
|
||||
}
|
||||
|
||||
basic_json(initializer_list init_list)
|
||||
basic_json(initializer_list const& init_list)
|
||||
{
|
||||
bool is_an_object = std::all_of(init_list.begin(), init_list.end(), [](const basic_json& json)
|
||||
{
|
||||
|
|
@ -1934,6 +1934,32 @@ namespace easy2d
|
|||
}
|
||||
}
|
||||
|
||||
static inline basic_json object(initializer_list const& init_list)
|
||||
{
|
||||
if (init_list.size() != 2 || !(*init_list.begin()).is_string())
|
||||
{
|
||||
throw json_type_error("cannot create object from initializer_list");
|
||||
}
|
||||
|
||||
basic_json json;
|
||||
json.value_ = JsonType::Object;
|
||||
json.value_.data.object->emplace(*((*init_list.begin()).value_.data.string), *(init_list.begin() + 1));
|
||||
return json;
|
||||
}
|
||||
|
||||
static inline basic_json array(initializer_list const& init_list)
|
||||
{
|
||||
basic_json json;
|
||||
json.value_ = JsonType::Array;
|
||||
|
||||
if (init_list.size())
|
||||
{
|
||||
json.value_.data.vector->reserve(init_list.size());
|
||||
json.value_.data.vector->assign(init_list.begin(), init_list.end());
|
||||
}
|
||||
return json;
|
||||
}
|
||||
|
||||
inline bool is_object() const { return value_.type == JsonType::Object; }
|
||||
|
||||
inline bool is_array() const { return value_.type == JsonType::Array; }
|
||||
|
|
|
|||
|
|
@ -111,9 +111,7 @@ public:
|
|||
Logger::Instance().Println(L"Start to send PUT request...");
|
||||
|
||||
// 创建 JSON 格式的 PUT 数据
|
||||
Json request_data = {
|
||||
{"user", {{"id", 1}, {"phone", "12345678"}}},
|
||||
};
|
||||
Json request_data = Json::array({ 1, 2, 3 });
|
||||
|
||||
HttpRequestPtr request = new HttpRequest;
|
||||
request->SetUrl(L"http://httpbin.org/put");
|
||||
|
|
|
|||
Loading…
Reference in New Issue