增加request获取临时数据

This commit is contained in:
NH
2025-07-13 15:39:36 +08:00
parent f2134c4358
commit fb92d42df4
3 changed files with 34 additions and 20 deletions

View File

@@ -133,6 +133,18 @@ std::string module::request::get(const std::string& name)
{
return m_request->reqpack()->extra()[name].to<std::string>();
}
sol::table module::request::gets(sol::this_state s)
{
sol::state_view lua(s);
sol::table result_table = lua.create_table();
auto keys = m_request->reqpack()->extra().keys();
for (size_t i = 0; i < keys.size(); i++)
result_table[keys[i]] = m_request->reqpack()->extra()[keys[i]].to<std::string>();
return result_table;
}
network::http::website* module::request::website()
{
return m_request->website();
@@ -160,6 +172,7 @@ void module::request::regist(sol::state* lua)
"multipart_content", &module::request::multipart_content,
"multipart_content_save", &module::request::multipart_content_save,
"get", &module::request::get,
"gets", &module::request::gets,
"set", &module::request::set,
"save_body", &module::request::save_body
);

View File

@@ -111,6 +111,7 @@ namespace module
/// <param name="name"></param>
/// <returns></returns>
std::string get(const std::string& name);
sol::table gets(sol::this_state s);
/// <summary>
/// 网站指针
/// </summary>

View File

@@ -448,30 +448,30 @@ void fastweb::install_module_linux(fastweb::module_info info)
}
#else
void fastweb::install_module_windows(fastweb::module_info info)
{
{
std::cout<<"正在安装 `"<<info.name_en<<"` 库"<<std::endl;
network::http::client_plus client;
if(client.get(info.download_win64) == false)
{
std::cerr<<"下载模块压缩包失败: "<<info.download_win64<<", "<<client.last_error()<<std::endl;
return;
}
if(client.status() != 200)
{
std::cerr<<"下载模块压缩包失败: "<<info.download_win64<<", status: "<<client.status()<<std::endl;
return;
}
std::string zip_filepath = ylib::file::temp_filepath()+".zip";
ylib::file::write(zip_filepath,client.response());
//std::cout<<"正在安装 `"<<info.name_en<<"` 库"<<std::endl;
//network::http::client_plus client;
//if(client.get(info.download_win64) == false)
//{
// std::cerr<<"下载模块压缩包失败: "<<info.download_win64<<", "<<client.last_error()<<std::endl;
// return;
//}
//if(client.status() != 200)
//{
// std::cerr<<"下载模块压缩包失败: "<<info.download_win64<<", status: "<<client.status()<<std::endl;
// return;
//}
//std::string zip_filepath = ylib::file::temp_filepath()+".zip";
//ylib::file::write(zip_filepath,client.response());
std::string new_module_dirpath = m_ini.read("scripts","module_dir")+"/.install/"+info.id;
ylib::file::create_dir(new_module_dirpath,true);
//
//std::string new_module_dirpath = m_ini.read("scripts","module_dir")+"/.install/"+info.id;
//ylib::file::create_dir(new_module_dirpath,true);
zip_extract(zip_filepath.c_str(), new_module_dirpath.c_str(), nullptr, nullptr);
std::cerr<<"安装成功"<<std::endl;
//zip_extract(zip_filepath.c_str(), new_module_dirpath.c_str(), nullptr, nullptr);
//std::cerr<<"安装成功"<<std::endl;
}
#endif
bool fastweb::parse_config(const std::string &ini_filepath)