Browse Source

Z991239-4806 #comment 合并chromium两端代码

陈良瑜80374463 2 years ago
parent
commit
7d5dfb6207

+ 18 - 10
Module/mod_chromium/CModTools.cpp

@@ -196,6 +196,13 @@ namespace Chromium {
 
 	std::pair<bool, std::string> CModTools::GenerateErrPage(ERR_PAGE_REASON errType, std::tuple < std::string, std::string> norParam, std::tuple<std::string, std::string, std::string, DWORD, DWORD> exParam)
 	{
+		auto generate_url_prefix = []() -> CSimpleStringA {
+#if defined(RVC_OS_WIN)
+			return CSimpleStringA("");
+#else
+			return CSimpleStringA("\\");
+#endif
+		};
 		auto errUrlRet = getErrUrl(errType);
 		CSimpleStringA errPagePathBase = errUrlRet.second.c_str();
 		CSimpleStringA errPageParams(true);
@@ -215,25 +222,26 @@ namespace Chromium {
 		{
 			errPageParams.Append(CSimpleStringA("showlimit=1"));
 			if (m_withMin) {
-				errPageParams.Append(CSimpleStringA("\\&showmin=1"));
+				errPageParams.Append(CSimpleStringA(generate_url_prefix())).Append(CSimpleStringA("&showmin=1"));
 			}
 		}
 		break;
 		case ERR_PAGE_REASON::ErrNotify:
 		{
-			errPageParams.Append(CSimpleStringA("reason=")).Append(std::get<0>(exParam).c_str()).Append("\\&errmsg=").Append(std::get<1>(exParam).c_str());
+			errPageParams.Append(CSimpleStringA("reason=")).Append(std::get<0>(exParam).c_str())
+			.Append(CSimpleStringA(generate_url_prefix())).Append("&errmsg=").Append(std::get<1>(exParam).c_str());
             if (std::get<2>(exParam).length() > 5 && showRebootTime)
-				errPageParams.Append("\\&reboottime=").Append(std::get<2>(exParam).c_str());
+				errPageParams.Append(CSimpleStringA(generate_url_prefix())).Append("&reboottime=").Append(std::get<2>(exParam).c_str());
 
-			errPageParams.Append(CSimpleStringA("\\&showlimit=")).Append(std::to_string((unsigned long long)1).c_str());
-			errPageParams.Append(CSimpleStringA("\\&terminalno=")).Append(std::get<0>(norParam).c_str());
-			errPageParams.Append(CSimpleStringA("\\&errtime=")).Append(std::get<1>(norParam).c_str());
+			errPageParams.Append(CSimpleStringA(generate_url_prefix())).Append(CSimpleStringA("&showlimit=")).Append(std::to_string((unsigned long long)1).c_str());
+			errPageParams.Append(CSimpleStringA(generate_url_prefix())).Append(CSimpleStringA("&terminalno=")).Append(std::get<0>(norParam).c_str());
+			errPageParams.Append(CSimpleStringA(generate_url_prefix())).Append(CSimpleStringA("&errtime=")).Append(std::get<1>(norParam).c_str());
 
             CSimpleStringA strSysCode = CSimpleStringA::Format("0x%X", std::get<3>(exParam));
             CSimpleStringA strUsrCode = CSimpleStringA::Format("0x%X", std::get<4>(exParam));
 
-			errPageParams.Append(CSimpleStringA("\\&syscode=")).Append(strSysCode);
-			errPageParams.Append(CSimpleStringA("\\&usercode=")).Append(strUsrCode);
+			errPageParams.Append(CSimpleStringA(generate_url_prefix())).Append(CSimpleStringA("&syscode=")).Append(strSysCode);
+			errPageParams.Append(CSimpleStringA(generate_url_prefix())).Append(CSimpleStringA("&usercode=")).Append(strUsrCode);
 		}
 		break;
 		default:
@@ -457,7 +465,7 @@ namespace Chromium {
     std::string CModTools::generateCefclientCmd(bool isExtend, std::string mainUrl)
     {
         CSimpleStringA strChromiumPath = GetCefHead(this->m_pEntity), strCmdLine = "";
-        strCmdLine.Append(strChromiumPath).Append(CEFCLIENT_NAME).Append(" --url=").Append(mainUrl.c_str());
+        strCmdLine.Append(strChromiumPath).Append(" --url=").Append(mainUrl.c_str());
 
         if (isExtend) {
             //not support
@@ -500,7 +508,7 @@ namespace Chromium {
 #if defined(RVC_OS_WIN)
         CSimpleStringA cachePath;
         CSimpleStringA strChromiumPath = GetCefHead(this->m_pEntity), strCmdLine = "";
-        strCmdLine.Append(strChromiumPath).Append(CEFCLIENT_NAME).Append(" --url=").Append(mainUrl.c_str());
+        strCmdLine.Append(strChromiumPath).Append(" --url=").Append(mainUrl.c_str());
         this->m_pEntity->GetFunction()->GetPath("Temp", cachePath);
         cachePath.Append(CSimpleStringA(SPLIT_SLASH_STR)).Append("cefCache_").Append(m_strCacheHead.length() > 0 ? m_strCacheHead.c_str() : "").Append(m_specialPage_temp_name.c_str());
         //strCmdLine.Append(" --hide-controls=true")

+ 2 - 1
Module/mod_chromium/CModTools.h

@@ -1,6 +1,7 @@
 #ifndef CHROMIUM_CMODTOOLS_H
 #define CHROMIUM_CMODTOOLS_H
-
+#include "precompile.h"
+#include "SpBase.h"
 #define CHROMIUM_TIMER_ID 0xF001
 #include <tuple>
 #include "guitask/enum.h"

+ 3 - 1
Module/mod_chromium/CWSCodec.cpp

@@ -617,6 +617,8 @@ namespace Chromium {
 	}
 
 	std::pair<int, CMessage*> CWSCodec::JsonToBuffer(std::string strJson) {
+		//int pos = strJson.find('}'); //try to test json with linkInfo
+		//strJson = strJson.substr(0, pos) + ",\"BussinessId\":\"DoInit\",\"TraceId\":\"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\",\"SpanId\":\"AAAAAAAAAAAAAAAA\",\"ParentSpanId\":\"AAAAAAAAAAAAAAAA\",\"Timestamp\":\"\",\"ReservedControl\":0}";
 		cJSON* pJson = cJSON_Parse(strJson.c_str());
 		char  errmsg[1024] = { 0 };
 
@@ -1769,7 +1771,7 @@ namespace Chromium {
 		char str[8192] = { 0 };
 		int i = 0;
 		char c[5] = { 0 };
-		if (num > 1200)
+		if (num > 100)
 		{
 			for (i = 0; i < 50; i++)
 			{

+ 2 - 3
Module/mod_chromium/baseEx.cpp

@@ -3,7 +3,6 @@
 #include <stdint.h>
 #include <iostream>
 #include <vector>
-#include <set>
 #include <map>
 #include <boost/xpressive/xpressive_dynamic.hpp>
 #include <boost/algorithm/string.hpp>
@@ -358,7 +357,7 @@ std::string hexdumpToString(const char* buf, const int num)
 	char str[8192 * 2] = { 0 };
 	int i = 0;
 	char c[5] = { 0 };
-	if (num > 1200)
+	if (num > 100)
 	{
 		for (i = 0; i < 50; i++)
 		{
@@ -512,7 +511,7 @@ void receivehexdump(const char* buf, const int num) {
 	char str[8192 * 2] = { 0 };
 	int i = 0;
 	char c[5] = { 0 };
-	if (num > 1200)
+	if (num > 100)
 	{
 		for (i = 0; i < 50; i++)
 		{

+ 6 - 1
Module/mod_chromium/mod_chromium.cpp

@@ -470,6 +470,8 @@ namespace Chromium {
 			/** Z开头标识终端配种模式 [Gifur@20211017]*/
 		    if ('A' != t_terminalState[0] &&  'Z' != t_terminalState[0])
 			{
+				if (m_withBrowser)
+					break;//run IEBrowser
 				if ('X' == t_terminalState[0])
 				{
 					DbgEx("do not begin accessAuth, terminalStage X, do nothing.");
@@ -921,7 +923,10 @@ namespace Chromium {
 		Dbg("slv start at %s, used %d ms", startTimeStr.c_str(), timeDuration.total_milliseconds());
 		if (1 == getBrowserStartTimes())
 		{
-			LogWarn(Severity_Low, Error_Debug, LOG_TRACE_ENTITY_START_TIME, SP::Module::Util::generateConsumeTimeJson("slv", startTimeStr.c_str(), timeDuration.total_milliseconds()).GetData());
+			auto generateAlarmJson = [](CSimpleString entityName, CSimpleString startTime, int cost) ->CSimpleString {
+				return CSimpleString::Format("[{\"name\":\"%s\",\"time\":\"%s\",\"cost\":%d}]", entityName.GetData(), startTime.GetData(), cost);
+			};
+			LogWarn(Severity_Low, Error_Debug, LOG_TRACE_ENTITY_START_TIME, generateAlarmJson("slv", startTimeStr.c_str(), timeDuration.total_milliseconds()).GetData());
 		}
 		m_firstStartMain.unlock();
 	};