Add httpGet function

This commit is contained in:
Federico Cecchetto
2021-06-20 20:04:36 +02:00
parent e5083cd228
commit b1a29ded7d
11 changed files with 253 additions and 34 deletions

View File

@ -161,6 +161,26 @@ namespace io
return scripting::script_value{};
});
gsc::function::add("httpget", [](const gsc::function_args& args) -> scripting::script_value
{
const auto url = args[0].as<std::string>();
const auto object = scripting::entity(scripting::make_object());
scheduler::once([object, url]()
{
const auto result = utils::http::get_data(url.data());
scheduler::once([object, result]()
{
const auto value = result.has_value()
? result.value().substr(0, 0x5000)
: "";
scripting::notify(object, "done", {value});
});
}, scheduler::pipeline::async);
return object;
});
}
};
}