{"ScriptPreparationCode":null,"TestCases":[{"Name":"Using the spread operator","Code":"const firstObject = { sampleData: \u0027Hello world\u0027 }\r\nconst secondObject = {\r\n \u0022ctx\u0022: {\r\n \u0022request\u0022: {\r\n \u0022method\u0022: \u0022GET\u0022,\r\n \u0022url\u0022: \u0022/cart.html\u0022,\r\n \u0022header\u0022: {\r\n \u0022host\u0022: \u0022127.0.0.1:5047\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022,\r\n \u0022cache-control\u0022: \u0022max-age=0\u0022,\r\n \u0022upgrade-insecure-requests\u0022: \u00221\u0022,\r\n \u0022user-agent\u0022: \u0022Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36\u0022,\r\n \u0022accept\u0022: \u0022text/html,application/xhtml\u002Bxml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\u0022,\r\n \u0022accept-encoding\u0022: \u0022gzip, deflate, br\u0022,\r\n \u0022accept-language\u0022: \u0022zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\u0022,\r\n \u0022cookie\u0022: \u0022__da_ntes_utmfc=utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); kl_newpopup=1; _klhtxd_=31; __da_ntes_utmz=96992031.1530068012.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); JSESSIONID-WKL-8IO=b7phrfKchYjexzeULtELDeVeZS91Z%2FjYGtvE8yqiqU910ynGhjMLmpl2GlG7JB0%2F76b9ylIEocyVTgt8nByp5zQ74y826d9WyL%2BeG7vtco4Yh4CRijVjWlLlXMrkEvvUI58MaTxuJVYYOn6qhk5%5Cbb7XseZzHOJ5XIgu4Jj22RJEhzsL%3A1536234339063; davisit=NaN; __da_ntes_utma=96992031.1400796450.1508141878.1536147939.1536157980.22; _gat=1; _pzfxuvpc=1530068013101%7C1274204976745690252%7C10%7C1536159725360%7C3%7C3048211491399422318%7C9125971977150536027; _pzfxsvpc=9125971977150536027%7C1536158517682%7C4%7C; _ga=GA1.4.412449949.1508141879; _gid=GA1.4.352767971.1536147939; _dc_gtm_UA-60320154-1=1; __da_ntes_utmb=96992031.160.10.1536157980\u0022\r\n }\r\n },\r\n \u0022response\u0022: {\r\n \u0022status\u0022: 200,\r\n \u0022message\u0022: \u0022OK\u0022,\r\n \u0022header\u0022: {\r\n \u0022content-type\u0022: \u0022text/html; charset=utf-8\u0022,\r\n \u0022content-length\u0022: \u002246\u0022,\r\n \u0022date\u0022: \u0022Wed, 05 Sep 2018 15:02:12 GMT\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022\r\n }\r\n },\r\n \u0022app\u0022: {\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022baseDir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server\u0022,\r\n \u0022subdomainOffset\u0022: 2,\r\n \u0022config\u0022: \u0022\u003Cegg config\u003E\u0022,\r\n \u0022controller\u0022: \u0022\u003Cegg controller\u003E\u0022,\r\n \u0022httpclient\u0022: \u0022\u003Cegg httpclient\u003E\u0022,\r\n \u0022loggers\u0022: \u0022\u003Cegg loggers\u003E\u0022,\r\n \u0022middlewares\u0022: \u0022\u003Cegg middlewares\u003E\u0022,\r\n \u0022router\u0022: \u0022\u003Cegg router\u003E\u0022,\r\n \u0022serviceClasses\u0022: \u0022\u003Cegg serviceClasses\u003E\u0022\r\n },\r\n \u0022originalUrl\u0022: \u0022/cart.html\u0022,\r\n \u0022req\u0022: \u0022\u003Coriginal node req\u003E\u0022,\r\n \u0022res\u0022: \u0022\u003Coriginal node res\u003E\u0022,\r\n \u0022socket\u0022: \u0022\u003Coriginal node socket\u003E\u0022\r\n },\r\n \u0022request\u0022: {\r\n \u0022method\u0022: \u0022GET\u0022,\r\n \u0022url\u0022: \u0022/cart.html\u0022,\r\n \u0022header\u0022: {\r\n \u0022host\u0022: \u0022127.0.0.1:5047\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022,\r\n \u0022cache-control\u0022: \u0022max-age=0\u0022,\r\n \u0022upgrade-insecure-requests\u0022: \u00221\u0022,\r\n \u0022user-agent\u0022: \u0022Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36\u0022,\r\n \u0022accept\u0022: \u0022text/html,application/xhtml\u002Bxml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\u0022,\r\n \u0022accept-encoding\u0022: \u0022gzip, deflate, br\u0022,\r\n \u0022accept-language\u0022: \u0022zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\u0022,\r\n \u0022cookie\u0022: \u0022__da_ntes_utmfc=utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); kl_newpopup=1; _klhtxd_=31; __da_ntes_utmz=96992031.1530068012.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); JSESSIONID-WKL-8IO=b7phrfKchYjexzeULtELDeVeZS91Z%2FjYGtvE8yqiqU910ynGhjMLmpl2GlG7JB0%2F76b9ylIEocyVTgt8nByp5zQ74y826d9WyL%2BeG7vtco4Yh4CRijVjWlLlXMrkEvvUI58MaTxuJVYYOn6qhk5%5Cbb7XseZzHOJ5XIgu4Jj22RJEhzsL%3A1536234339063; davisit=NaN; __da_ntes_utma=96992031.1400796450.1508141878.1536147939.1536157980.22; _gat=1; _pzfxuvpc=1530068013101%7C1274204976745690252%7C10%7C1536159725360%7C3%7C3048211491399422318%7C9125971977150536027; _pzfxsvpc=9125971977150536027%7C1536158517682%7C4%7C; _ga=GA1.4.412449949.1508141879; _gid=GA1.4.352767971.1536147939; _dc_gtm_UA-60320154-1=1; __da_ntes_utmb=96992031.160.10.1536157980\u0022\r\n }\r\n },\r\n \u0022helper\u0022: {\r\n \u0022ctx\u0022: {\r\n \u0022request\u0022: {\r\n \u0022method\u0022: \u0022GET\u0022,\r\n \u0022url\u0022: \u0022/cart.html\u0022,\r\n \u0022header\u0022: {\r\n \u0022host\u0022: \u0022127.0.0.1:5047\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022,\r\n \u0022cache-control\u0022: \u0022max-age=0\u0022,\r\n \u0022upgrade-insecure-requests\u0022: \u00221\u0022,\r\n \u0022user-agent\u0022: \u0022Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36\u0022,\r\n \u0022accept\u0022: \u0022text/html,application/xhtml\u002Bxml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\u0022,\r\n \u0022accept-encoding\u0022: \u0022gzip, deflate, br\u0022,\r\n \u0022accept-language\u0022: \u0022zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\u0022,\r\n \u0022cookie\u0022: \u0022__da_ntes_utmfc=utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); kl_newpopup=1; _klhtxd_=31; __da_ntes_utmz=96992031.1530068012.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); JSESSIONID-WKL-8IO=b7phrfKchYjexzeULtELDeVeZS91Z%2FjYGtvE8yqiqU910ynGhjMLmpl2GlG7JB0%2F76b9ylIEocyVTgt8nByp5zQ74y826d9WyL%2BeG7vtco4Yh4CRijVjWlLlXMrkEvvUI58MaTxuJVYYOn6qhk5%5Cbb7XseZzHOJ5XIgu4Jj22RJEhzsL%3A1536234339063; davisit=NaN; __da_ntes_utma=96992031.1400796450.1508141878.1536147939.1536157980.22; _gat=1; _pzfxuvpc=1530068013101%7C1274204976745690252%7C10%7C1536159725360%7C3%7C3048211491399422318%7C9125971977150536027; _pzfxsvpc=9125971977150536027%7C1536158517682%7C4%7C; _ga=GA1.4.412449949.1508141879; _gid=GA1.4.352767971.1536147939; _dc_gtm_UA-60320154-1=1; __da_ntes_utmb=96992031.160.10.1536157980\u0022\r\n }\r\n },\r\n \u0022response\u0022: {\r\n \u0022status\u0022: 200,\r\n \u0022message\u0022: \u0022OK\u0022,\r\n \u0022header\u0022: {\r\n \u0022content-type\u0022: \u0022text/html; charset=utf-8\u0022,\r\n \u0022content-length\u0022: \u002246\u0022,\r\n \u0022date\u0022: \u0022Wed, 05 Sep 2018 15:02:12 GMT\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022\r\n }\r\n },\r\n \u0022app\u0022: {\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022baseDir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server\u0022,\r\n \u0022subdomainOffset\u0022: 2,\r\n \u0022config\u0022: \u0022\u003Cegg config\u003E\u0022,\r\n \u0022controller\u0022: \u0022\u003Cegg controller\u003E\u0022,\r\n \u0022httpclient\u0022: \u0022\u003Cegg httpclient\u003E\u0022,\r\n \u0022loggers\u0022: \u0022\u003Cegg loggers\u003E\u0022,\r\n \u0022middlewares\u0022: \u0022\u003Cegg middlewares\u003E\u0022,\r\n \u0022router\u0022: \u0022\u003Cegg router\u003E\u0022,\r\n \u0022serviceClasses\u0022: \u0022\u003Cegg serviceClasses\u003E\u0022\r\n },\r\n \u0022originalUrl\u0022: \u0022/cart.html\u0022,\r\n \u0022req\u0022: \u0022\u003Coriginal node req\u003E\u0022,\r\n \u0022res\u0022: \u0022\u003Coriginal node res\u003E\u0022,\r\n \u0022socket\u0022: \u0022\u003Coriginal node socket\u003E\u0022\r\n },\r\n \u0022app\u0022: {\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022baseDir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server\u0022,\r\n \u0022subdomainOffset\u0022: 2,\r\n \u0022config\u0022: \u0022\u003Cegg config\u003E\u0022,\r\n \u0022controller\u0022: \u0022\u003Cegg controller\u003E\u0022,\r\n \u0022httpclient\u0022: \u0022\u003Cegg httpclient\u003E\u0022,\r\n \u0022loggers\u0022: \u0022\u003Cegg loggers\u003E\u0022,\r\n \u0022middlewares\u0022: \u0022\u003Cegg middlewares\u003E\u0022,\r\n \u0022router\u0022: \u0022\u003Cegg router\u003E\u0022,\r\n \u0022serviceClasses\u0022: \u0022\u003Cegg serviceClasses\u003E\u0022\r\n },\r\n \u0022config\u0022: {\r\n \u0022session\u0022: {\r\n \u0022maxAge\u0022: 86400000,\r\n \u0022key\u0022: \u0022EGG_SESS\u0022,\r\n \u0022httpOnly\u0022: true,\r\n \u0022encrypt\u0022: true,\r\n \u0022overwrite\u0022: true,\r\n \u0022signed\u0022: true\r\n },\r\n \u0022security\u0022: {\r\n \u0022domainWhiteList\u0022: [\u0022.kaola.com\u0022, \u0022.kaola.com.hk\u0022, \u0022.netease.com\u0022, \u0022.127.net\u0022, \u0022.126.net\u0022, \u0022.163.com\u0022, \u0022.netease.com\u0022],\r\n \u0022protocolWhiteList\u0022: [],\r\n \u0022defaultMiddleware\u0022: \u0022csrf,hsts,methodnoallow,noopen,nosniff,csp,xssProtection,xframe,dta\u0022,\r\n \u0022csrf\u0022: {\r\n \u0022enable\u0022: false,\r\n \u0022useSession\u0022: false,\r\n \u0022ignoreJSON\u0022: false,\r\n \u0022cookieName\u0022: \u0022csrfToken\u0022,\r\n \u0022sessionName\u0022: \u0022csrfToken\u0022,\r\n \u0022headerName\u0022: \u0022x-csrf-token\u0022,\r\n \u0022bodyName\u0022: \u0022_csrf\u0022,\r\n \u0022queryName\u0022: \u0022_csrf\u0022\r\n },\r\n \u0022xframe\u0022: {\r\n \u0022enable\u0022: true,\r\n \u0022value\u0022: \u0022SAMEORIGIN\u0022\r\n },\r\n \u0022hsts\u0022: {\r\n \u0022enable\u0022: false,\r\n \u0022maxAge\u0022: 31536000,\r\n \u0022includeSubdomains\u0022: false\r\n },\r\n \u0022dta\u0022: {\r\n \u0022enable\u0022: true\r\n },\r\n \u0022methodnoallow\u0022: {\r\n \u0022enable\u0022: true\r\n },\r\n \u0022noopen\u0022: {\r\n \u0022enable\u0022: true\r\n },\r\n \u0022nosniff\u0022: {\r\n \u0022enable\u0022: true\r\n },\r\n \u0022referrerPolicy\u0022: {\r\n \u0022enable\u0022: false,\r\n \u0022value\u0022: \u0022no-referrer-when-downgrade\u0022\r\n },\r\n \u0022xssProtection\u0022: {\r\n \u0022enable\u0022: true,\r\n \u0022value\u0022: \u00221; mode=block\u0022\r\n },\r\n \u0022csp\u0022: {\r\n \u0022enable\u0022: false,\r\n \u0022policy\u0022: {}\r\n },\r\n \u0022ssrf\u0022: {\r\n \u0022ipBlackList\u0022: null,\r\n \u0022checkAddress\u0022: null\r\n }\r\n },\r\n \u0022helper\u0022: {\r\n \u0022shtml\u0022: {}\r\n },\r\n \u0022jsonp\u0022: {\r\n \u0022limit\u0022: 50,\r\n \u0022callback\u0022: [\u0022_callback\u0022, \u0022callback\u0022],\r\n \u0022csrf\u0022: false\r\n },\r\n \u0022onerror\u0022: {\r\n \u0022errorPageUrl\u0022: \u0022\u0022,\r\n \u0022appErrorFilter\u0022: null,\r\n \u0022templatePath\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-onerror/lib/onerror_page.mustache\u0022\r\n },\r\n \u0022i18n\u0022: {\r\n \u0022defaultLocale\u0022: \u0022en_US\u0022,\r\n \u0022dirs\u0022: [\u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-session/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-security/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-jsonp/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-onerror/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-i18n/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-watcher/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-multipart/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-development/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-schedule/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-logrotator/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-static/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-view/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-registry/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-shared-data/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-zookeeper/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-metrics/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-nss/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-mock/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-health/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-kafka/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-proxy/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-view-art-template/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/config/locales\u0022],\r\n \u0022queryField\u0022: \u0022locale\u0022,\r\n \u0022cookieField\u0022: \u0022locale\u0022,\r\n \u0022cookieMaxAge\u0022: \u00221y\u0022,\r\n \u0022functionName\u0022: \u0022__\u0022\r\n },\r\n \u0022watcher\u0022: {\r\n \u0022type\u0022: \u0022development\u0022,\r\n \u0022eventSources\u0022: {\r\n \u0022default\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-watcher/lib/event-sources/default\u0022,\r\n \u0022development\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-watcher/lib/event-sources/development\u0022\r\n }\r\n },\r\n \u0022multipart\u0022: {\r\n \u0022autoFields\u0022: false,\r\n \u0022defaultCharset\u0022: \u0022utf8\u0022,\r\n \u0022fieldNameSize\u0022: 100,\r\n \u0022fieldSize\u0022: 102400,\r\n \u0022fields\u0022: 10,\r\n \u0022fileSize\u0022: 10485760,\r\n \u0022files\u0022: 10,\r\n \u0022fileExtensions\u0022: [],\r\n \u0022whitelist\u0022: null\r\n },\r\n \u0022development\u0022: {\r\n \u0022watchDirs\u0022: [],\r\n \u0022ignoreDirs\u0022: [],\r\n \u0022fastReady\u0022: false,\r\n \u0022reloadOnDebug\u0022: true,\r\n \u0022overrideDefault\u0022: false\r\n },\r\n \u0022customLogger\u0022: {\r\n \u0022scheduleLogger\u0022: {\r\n \u0022consoleLevel\u0022: \u0022NONE\u0022,\r\n \u0022file\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/logs/kaola-tradecenter-fed/egg-schedule.log\u0022\r\n }\r\n },\r\n \u0022logrotator\u0022: {\r\n \u0022filesRotateByHour\u0022: null,\r\n \u0022hourDelimiter\u0022: \u0022-\u0022,\r\n \u0022filesRotateBySize\u0022: null,\r\n \u0022maxFileSize\u0022: 52428800,\r\n \u0022maxFiles\u0022: 10,\r\n \u0022rotateDuration\u0022: 60000,\r\n \u0022maxDays\u0022: 31\r\n },\r\n \u0022static\u0022: {\r\n \u0022prefix\u0022: \u0022/public/\u0022,\r\n \u0022dir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/app/public\u0022,\r\n \u0022dynamic\u0022: true,\r\n \u0022preload\u0022: false,\r\n \u0022buffer\u0022: false,\r\n \u0022maxFiles\u0022: 1000,\r\n \u0022files\u0022: {\r\n \u0022max\u0022: 1000,\r\n \u0022size\u0022: 5,\r\n \u0022cache\u0022: {},\r\n \u0022_cache\u0022: {}\r\n }\r\n },\r\n \u0022view\u0022: {\r\n \u0022root\u0022: [\u0022/Users/will/Work/kaola-tradecenter-fed/server/app/view\u0022],\r\n \u0022cache\u0022: false,\r\n \u0022defaultExtension\u0022: \u0022.html\u0022,\r\n \u0022defaultViewEngine\u0022: \u0022viewArtTemplate\u0022,\r\n \u0022mapping\u0022: {}\r\n },\r\n \u0022store\u0022: {},\r\n \u0022metrics\u0022: {\r\n \u0022size\u0022: 1000,\r\n \u0022erorrSize\u0022: 100,\r\n \u0022addupMetrics\u0022: {},\r\n \u0022urlCategories\u0022: {}\r\n },\r\n \u0022nss\u0022: {\r\n \u0022outputFormat\u0022: \u0022text\u0022\r\n },\r\n \u0022mock\u0022: {\r\n \u0022port\u0022: 6045,\r\n \u0022secure\u0022: false,\r\n \u0022viewRoot\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-mock/config\u0022,\r\n \u0022routes\u0022: [],\r\n \u0022statics\u0022: [],\r\n \u0022syncData\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-mock/config\u0022,\r\n \u0022asyncData\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/mock\u0022,\r\n \u0022plugins\u0022: {\r\n \u0022mock-control\u0022: {},\r\n \u0022route-display\u0022: {\r\n \u0022options\u0022: {\r\n \u0022path\u0022: \u0022/_routes\u0022\r\n }\r\n },\r\n \u0022auto-mount\u0022: {\r\n \u0022tplUrlMap\u0022: {}\r\n }\r\n },\r\n \u0022argv\u0022: {}\r\n },\r\n \u0022health\u0022: {\r\n \u0022ipWhiteList\u0022: [\u0022172.17.1.18\u0022, \u002210.164.137.6\u0022, \u002210.164.137.8\u0022, \u002210.172.27.233\u0022, \u002210.172.27.235\u0022, \u0022127.0.0.1\u0022],\r\n \u0022statusUrl\u0022: \u0022/health/status\u0022,\r\n \u0022activeUrl\u0022: \u0022/health/active\u0022,\r\n \u0022offlineUrl\u0022: \u0022/health/offline\u0022\r\n },\r\n \u0022kafka\u0022: {\r\n \u0022timeout\u0022: 10000\r\n },\r\n \u0022proxy\u0022: {\r\n \u0022checkHealth\u0022: false,\r\n \u0022proxies\u0022: {\r\n \u0022wap\u0022: {\r\n \u0022host\u0022: \u0022m-trade.kaola.com\u0022,\r\n \u0022target\u0022: \u0022http://127.0.0.1:6045\u0022\r\n },\r\n \u0022web\u0022: {\r\n \u0022host\u0022: \u0022trade.kaola.com\u0022,\r\n \u0022target\u0022: \u0022http://127.0.0.1:6045\u0022\r\n }\r\n }\r\n },\r\n \u0022viewArtTemplate\u0022: {\r\n \u0022writeResp\u0022: true,\r\n \u0022debug\u0022: false,\r\n \u0022htmlMinifierOptions\u0022: {\r\n \u0022collapseWhitespace\u0022: true,\r\n \u0022minifyCSS\u0022: false,\r\n \u0022minifyJS\u0022: false,\r\n \u0022ignoreCustomFragments\u0022: []\r\n },\r\n \u0022imports\u0022: {\r\n \u0022string\u0022: {},\r\n \u0022time\u0022: {},\r\n \u0022url\u0022: {},\r\n \u0022types\u0022: {},\r\n \u0022util\u0022: {}\r\n },\r\n \u0022compileDebug\u0022: true,\r\n \u0022cache\u0022: false,\r\n \u0022minimize\u0022: false\r\n },\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022keys\u0022: \u0022kaola-tradecenter-fed_1513150693658_4046\u0022,\r\n \u0022protocolHeaders\u0022: \u0022x-forwarded-proto\u0022,\r\n \u0022ipHeaders\u0022: \u0022x-forwarded-for\u0022,\r\n \u0022hostHeaders\u0022: \u0022\u0022,\r\n \u0022pkg\u0022: {\r\n \u0022dependencies\u0022: {\r\n \u0022@kaola/kapp\u0022: \u00221.4.10\u0022,\r\n \u0022@kaola/kaola-haitaoweb-arttemplate\u0022: \u00220.3.3-dev4\u0022,\r\n \u0022egg\u0022: \u0022^2.3.0\u0022,\r\n \u0022egg-cors\u0022: \u0022^2.0.0\u0022\r\n },\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022version\u0022: \u00221.0.0\u0022,\r\n \u0022private\u0022: true,\r\n \u0022lint-staged\u0022: {\r\n \u0022**/*.js\u0022: [\u0022eslint --fix\u0022, \u0022git add\u0022]\r\n },\r\n \u0022devDependencies\u0022: {\r\n \u0022autod\u0022: \u0022^3.0.1\u0022,\r\n \u0022autod-egg\u0022: \u0022^1.0.0\u0022,\r\n \u0022axios\u0022: \u0022^0.17.1\u0022,\r\n \u0022babel-eslint\u0022: \u0022^8.2.1\u0022,\r\n \u0022cross-env\u0022: \u0022^5.1.3\u0022,\r\n \u0022egg-bin\u0022: \u0022^4.3.5\u0022,\r\n \u0022egg-ci\u0022: \u0022^1.8.0\u0022,\r\n \u0022egg-mock\u0022: \u0022^3.13.0\u0022,\r\n \u0022egg-scripts\u0022: \u0022^2.1.0\u0022,\r\n \u0022eslint\u0022: \u0022^4.16.0\u0022,\r\n \u0022eslint-config-kaola\u0022: \u0022^0.1.3\u0022,\r\n \u0022husky\u0022: \u0022^0.14.3\u0022,\r\n \u0022lint-staged\u0022: \u0022^6.1.0\u0022,\r\n \u0022webstorm-disable-index\u0022: \u0022^1.2.0\u0022\r\n },\r\n \u0022engines\u0022: {\r\n \u0022node\u0022: \u0022\u003E=8.9.0\u0022\r\n },\r\n \u0022scripts\u0022: {\r\n \u0022precommit\u0022: \u0022lint-staged\u0022,\r\n \u0022egg-scripts\u0022: \u0022node ./node_modules/egg-scripts/bin/egg-scripts\u0022,\r\n \u0022egg-bin\u0022: \u0022node ./node_modules/egg-bin/bin/egg-bin\u0022,\r\n \u0022cross-env\u0022: \u0022node ./node_modules/cross-env/dist/bin/cross-env\u0022,\r\n \u0022start\u0022: \u0022npm run egg-scripts -- start --title=kaola-tradecenter-fed\u0022,\r\n \u0022stop\u0022: \u0022npm run egg-scripts -- stop --title=kaola-tradecenter-fed\u0022,\r\n \u0022debug\u0022: \u0022npm run egg-bin -- debug\u0022,\r\n \u0022dev\u0022: \u0022npm run egg-bin -- dev\u0022,\r\n \u0022test\u0022: \u0022npm run egg-bin -- test\u0022,\r\n \u0022cov\u0022: \u0022npm run egg-bin -- cov\u0022,\r\n \u0022lint\u0022: \u0022eslint . --ignore-path .gitignore\u0022,\r\n \u0022ci\u0022: \u0022npm run lint \u0026\u0026 npm run cov\u0022,\r\n \u0022autod\u0022: \u0022autod\u0022,\r\n \u0022install:wap\u0022: \u0022npm i --prefix=./client/wap/deploy/ \u0026\u0026 npm i --prefix=./client/wap/\u0022,\r\n \u0022install:web\u0022: \u0022npm i --prefix=./client/web/deploy/ \u0026\u0026 npm i --prefix=./client/web/\u0022,\r\n \u0022builddev:wap\u0022: \u0022npm run builddll --prefix=./client/wap/deploy/ \u0026\u0026 npm run builddev --prefix=./client/wap/deploy/\u0022,\r\n \u0022builddev:web\u0022: \u0022npm run builddll --prefix=./client/web/deploy/ \u0026\u0026 npm run builddev --prefix=./client/web/deploy/\u0022,\r\n \u0022convert\u0022: \u0022node ./toolkits/convert-template-syntax.js --glob=./client/web/template/pages/order/*.ftl --type=web\u0022\r\n },\r\n \u0022ci\u0022: {\r\n \u0022version\u0022: \u00228\u0022\r\n },\r\n \u0022repository\u0022: {\r\n \u0022type\u0022: \u0022git\u0022,\r\n \u0022url\u0022: \u0022\u0022\r\n },\r\n \u0022egg\u0022: {\r\n \u0022framework\u0022: \u0022@kaola/kapp\u0022\r\n },\r\n \u0022author\u0022: \u0022\u0022,\r\n \u0022license\u0022: \u0022MIT\u0022,\r\n \u0022main\u0022: \u0022app.js\u0022,\r\n \u0022directories\u0022: {\r\n \u0022lib\u0022: \u0022lib\u0022,\r\n \u0022test\u0022: \u0022test\u0022\r\n },\r\n \u0022keywords\u0022: [],\r\n \u0022description\u0022: \u0022\u0022\r\n },\r\n \u0022baseDir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server\u0022,\r\n \u0022HOME\u0022: \u0022/Users/will\u0022,\r\n \u0022rundir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/run\u0022,\r\n \u0022dump\u0022: {\r\n \u0022ignore\u0022: {}\r\n },\r\n \u0022confusedConfigurations\u0022: {\r\n \u0022bodyparser\u0022: \u0022bodyParser\u0022,\r\n \u0022notFound\u0022: \u0022notfound\u0022,\r\n \u0022sitefile\u0022: \u0022siteFile\u0022,\r\n \u0022middlewares\u0022: \u0022middleware\u0022,\r\n \u0022httpClient\u0022: \u0022httpclient\u0022\r\n },\r\n \u0022notfound\u0022: {\r\n \u0022pageUrl\u0022: \u0022\u0022\r\n },\r\n \u0022siteFile\u0022: {\r\n \u0022/favicon.ico\u0022: \u0022https://haitao.nos.netease.com/82fef7a9-0059-422f-8f70-a2a90d363e8b_16_16.ico\u0022\r\n },\r\n \u0022bodyParser\u0022: {\r\n \u0022enable\u0022: true,\r\n \u0022encoding\u0022: \u0022utf8\u0022,\r\n \u0022formLimit\u0022: \u0022100kb\u0022,\r\n \u0022jsonLimit\u0022: \u0022100kb\u0022,\r\n \u0022strict\u0022: true,\r\n \u0022queryString\u0022: {\r\n \u0022arrayLimit\u0022: 100,\r\n \u0022depth\u0022: 5,\r\n \u0022parameterLimit\u0022: 1000,\r\n \u0022allowDots\u0022: true\r\n },\r\n \u0022returnRawBody\u0022: true\r\n },\r\n \u0022logger\u0022: {\r\n \u0022dir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/logs/elk\u0022,\r\n \u0022encoding\u0022: \u0022utf8\u0022,\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022level\u0022: \u0022INFO\u0022,\r\n \u0022consoleLevel\u0022: \u0022INFO\u0022,\r\n \u0022disableConsoleAfterReady\u0022: false,\r\n \u0022outputJSON\u0022: false,\r\n \u0022buffer\u0022: true,\r\n \u0022appLogName\u0022: \u0022kaola-tradecenter-fed-web.log\u0022,\r\n \u0022coreLogName\u0022: \u0022egg-web.log\u0022,\r\n \u0022agentLogName\u0022: \u0022egg-agent.log\u0022,\r\n \u0022errorLogName\u0022: \u0022common-error.log\u0022,\r\n \u0022coreLogger\u0022: {\r\n \u0022consoleLevel\u0022: \u0022WARN\u0022\r\n },\r\n \u0022allowDebugAtProd\u0022: false,\r\n \u0022type\u0022: \u0022application\u0022\r\n },\r\n \u0022httpclient\u0022: {\r\n \u0022enableDNSCache\u0022: true,\r\n \u0022dnsCacheMaxLength\u0022: 1000,\r\n \u0022dnsCacheMaxAge\u0022: 10000,\r\n \u0022request\u0022: {\r\n \u0022timeout\u0022: 5000\r\n },\r\n \u0022httpAgent\u0022: {\r\n \u0022keepAlive\u0022: true,\r\n \u0022freeSocketKeepAliveTimeout\u0022: 4000,\r\n \u0022maxSockets\u0022: 9007199254740991,\r\n \u0022maxFreeSockets\u0022: 256,\r\n \u0022timeout\u0022: 30000\r\n },\r\n \u0022httpsAgent\u0022: {\r\n \u0022keepAlive\u0022: true,\r\n \u0022freeSocketKeepAliveTimeout\u0022: 4000,\r\n \u0022maxSockets\u0022: 9007199254740991,\r\n \u0022maxFreeSockets\u0022: 256,\r\n \u0022timeout\u0022: 30000\r\n }\r\n },\r\n \u0022meta\u0022: {\r\n \u0022enable\u0022: true,\r\n \u0022logging\u0022: false\r\n },\r\n \u0022coreMiddleware\u0022: [\u0022meta\u0022, \u0022siteFile\u0022, \u0022notfound\u0022, \u0022static\u0022, \u0022bodyParser\u0022, \u0022overrideMethod\u0022, \u0022session\u0022, \u0022securities\u0022, \u0022i18n\u0022, \u0022accessMetrics\u0022, \u0022nss\u0022, \u0022health\u0022, \u0022locals\u0022],\r\n \u0022workerStartTimeout\u0022: 600000,\r\n \u0022cluster\u0022: {\r\n \u0022listen\u0022: {\r\n \u0022path\u0022: \u0022\u0022,\r\n \u0022port\u0022: 5047,\r\n \u0022hostname\u0022: \u0022\u0022\r\n }\r\n },\r\n \u0022clusterClient\u0022: {\r\n \u0022maxWaitTime\u0022: 60000,\r\n \u0022responseTimeout\u0022: 60000\r\n },\r\n \u0022onClientError\u0022: null,\r\n \u0022kaolaEnv\u0022: \u0022local\u0022,\r\n \u0022isLocal\u0022: true,\r\n \u0022isPre\u0022: false,\r\n \u0022isOnline\u0022: false,\r\n \u0022isTest\u0022: false,\r\n \u0022alinode\u0022: {\r\n \u0022server\u0022: \u0022wss://agentserver.node.aliyun.com:8080\u0022\r\n },\r\n \u0022middleware\u0022: [],\r\n \u0022disconf\u0022: {\r\n \u0022application\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022fetchRemoteKappConfig\u0022: false,\r\n \u0022groups\u0022: [{\r\n \u0022type\u0022: \u0022static\u0022,\r\n \u0022name\u0022: \u0022proxy\u0022,\r\n \u0022env\u0022: \u0022local\u0022\r\n }]\r\n },\r\n \u0022cors\u0022: {\r\n \u0022allowMethods\u0022: \u0022GET,HEAD,POST,PUT,DELETE,TRACE,OPTIONS,PATCH\u0022,\r\n \u0022exposeHeaders\u0022: [],\r\n \u0022allowHeaders\u0022: \u0022Content-Type,X-Requested-With,ursAuth,origin,ursid,urstoken\u0022,\r\n \u0022maxAge\u0022: \u002286400\u0022,\r\n \u0022credentials\u0022: true,\r\n \u0022keepHeadersOnError\u0022: true\r\n },\r\n \u0022coreMiddlewares\u0022: [\u0022meta\u0022, \u0022siteFile\u0022, \u0022notfound\u0022, \u0022static\u0022, \u0022bodyParser\u0022, \u0022overrideMethod\u0022, \u0022session\u0022, \u0022securities\u0022, \u0022i18n\u0022, \u0022accessMetrics\u0022, \u0022nss\u0022, \u0022health\u0022, \u0022locals\u0022],\r\n \u0022appMiddlewares\u0022: [],\r\n \u0022appMiddleware\u0022: [],\r\n \u0022multipartParseOptions\u0022: {\r\n \u0022autoFields\u0022: false,\r\n \u0022defCharset\u0022: \u0022utf8\u0022,\r\n \u0022limits\u0022: {\r\n \u0022fieldNameSize\u0022: 100,\r\n \u0022fieldSize\u0022: 102400,\r\n \u0022fields\u0022: 10,\r\n \u0022fileSize\u0022: 10485760,\r\n \u0022files\u0022: 10\r\n }\r\n }\r\n },\r\n \u0022service\u0022: {\r\n \u0022_cache\u0022: {},\r\n \u0022_ctx\u0022: {\r\n \u0022request\u0022: {\r\n \u0022method\u0022: \u0022GET\u0022,\r\n \u0022url\u0022: \u0022/cart.html\u0022,\r\n \u0022header\u0022: {\r\n \u0022host\u0022: \u0022127.0.0.1:5047\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022,\r\n \u0022cache-control\u0022: \u0022max-age=0\u0022,\r\n \u0022upgrade-insecure-requests\u0022: \u00221\u0022,\r\n \u0022user-agent\u0022: \u0022Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36\u0022,\r\n \u0022accept\u0022: \u0022text/html,application/xhtml\u002Bxml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\u0022,\r\n \u0022accept-encoding\u0022: \u0022gzip, deflate, br\u0022,\r\n \u0022accept-language\u0022: \u0022zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\u0022,\r\n \u0022cookie\u0022: \u0022__da_ntes_utmfc=utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); kl_newpopup=1; _klhtxd_=31; __da_ntes_utmz=96992031.1530068012.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); JSESSIONID-WKL-8IO=b7phrfKchYjexzeULtELDeVeZS91Z%2FjYGtvE8yqiqU910ynGhjMLmpl2GlG7JB0%2F76b9ylIEocyVTgt8nByp5zQ74y826d9WyL%2BeG7vtco4Yh4CRijVjWlLlXMrkEvvUI58MaTxuJVYYOn6qhk5%5Cbb7XseZzHOJ5XIgu4Jj22RJEhzsL%3A1536234339063; davisit=NaN; __da_ntes_utma=96992031.1400796450.1508141878.1536147939.1536157980.22; _gat=1; _pzfxuvpc=1530068013101%7C1274204976745690252%7C10%7C1536159725360%7C3%7C3048211491399422318%7C9125971977150536027; _pzfxsvpc=9125971977150536027%7C1536158517682%7C4%7C; _ga=GA1.4.412449949.1508141879; _gid=GA1.4.352767971.1536147939; _dc_gtm_UA-60320154-1=1; __da_ntes_utmb=96992031.160.10.1536157980\u0022\r\n }\r\n },\r\n \u0022response\u0022: {\r\n \u0022status\u0022: 200,\r\n \u0022message\u0022: \u0022OK\u0022,\r\n \u0022header\u0022: {\r\n \u0022content-type\u0022: \u0022text/html; charset=utf-8\u0022,\r\n \u0022content-length\u0022: \u002246\u0022,\r\n \u0022date\u0022: \u0022Wed, 05 Sep 2018 15:02:12 GMT\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022\r\n }\r\n },\r\n \u0022app\u0022: {\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022baseDir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server\u0022,\r\n \u0022subdomainOffset\u0022: 2,\r\n \u0022config\u0022: \u0022\u003Cegg config\u003E\u0022,\r\n \u0022controller\u0022: \u0022\u003Cegg controller\u003E\u0022,\r\n \u0022httpclient\u0022: \u0022\u003Cegg httpclient\u003E\u0022,\r\n \u0022loggers\u0022: \u0022\u003Cegg loggers\u003E\u0022,\r\n \u0022middlewares\u0022: \u0022\u003Cegg middlewares\u003E\u0022,\r\n \u0022router\u0022: \u0022\u003Cegg router\u003E\u0022,\r\n \u0022serviceClasses\u0022: \u0022\u003Cegg serviceClasses\u003E\u0022\r\n },\r\n \u0022originalUrl\u0022: \u0022/cart.html\u0022,\r\n \u0022req\u0022: \u0022\u003Coriginal node req\u003E\u0022,\r\n \u0022res\u0022: \u0022\u003Coriginal node res\u003E\u0022,\r\n \u0022socket\u0022: \u0022\u003Coriginal node socket\u003E\u0022\r\n }\r\n }\r\n },\r\n \u0022buyDomainUrl\u0022: \u0022/\u0022,\r\n \u0022isTestEnvironment\u0022: false\r\n};\r\nconst finalObject = {\r\n\t...firstObject,\r\n \t...secondObject\r\n};","IsDeferred":false},{"Name":"Using Object.assign","Code":"const firstObject = { sampleData: \u0027Hello world\u0027 }\r\nconst secondObject = {\r\n \u0022ctx\u0022: {\r\n \u0022request\u0022: {\r\n \u0022method\u0022: \u0022GET\u0022,\r\n \u0022url\u0022: \u0022/cart.html\u0022,\r\n \u0022header\u0022: {\r\n \u0022host\u0022: \u0022127.0.0.1:5047\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022,\r\n \u0022cache-control\u0022: \u0022max-age=0\u0022,\r\n \u0022upgrade-insecure-requests\u0022: \u00221\u0022,\r\n \u0022user-agent\u0022: \u0022Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36\u0022,\r\n \u0022accept\u0022: \u0022text/html,application/xhtml\u002Bxml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\u0022,\r\n \u0022accept-encoding\u0022: \u0022gzip, deflate, br\u0022,\r\n \u0022accept-language\u0022: \u0022zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\u0022,\r\n \u0022cookie\u0022: \u0022__da_ntes_utmfc=utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); kl_newpopup=1; _klhtxd_=31; __da_ntes_utmz=96992031.1530068012.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); JSESSIONID-WKL-8IO=b7phrfKchYjexzeULtELDeVeZS91Z%2FjYGtvE8yqiqU910ynGhjMLmpl2GlG7JB0%2F76b9ylIEocyVTgt8nByp5zQ74y826d9WyL%2BeG7vtco4Yh4CRijVjWlLlXMrkEvvUI58MaTxuJVYYOn6qhk5%5Cbb7XseZzHOJ5XIgu4Jj22RJEhzsL%3A1536234339063; davisit=NaN; __da_ntes_utma=96992031.1400796450.1508141878.1536147939.1536157980.22; _gat=1; _pzfxuvpc=1530068013101%7C1274204976745690252%7C10%7C1536159725360%7C3%7C3048211491399422318%7C9125971977150536027; _pzfxsvpc=9125971977150536027%7C1536158517682%7C4%7C; _ga=GA1.4.412449949.1508141879; _gid=GA1.4.352767971.1536147939; _dc_gtm_UA-60320154-1=1; __da_ntes_utmb=96992031.160.10.1536157980\u0022\r\n }\r\n },\r\n \u0022response\u0022: {\r\n \u0022status\u0022: 200,\r\n \u0022message\u0022: \u0022OK\u0022,\r\n \u0022header\u0022: {\r\n \u0022content-type\u0022: \u0022text/html; charset=utf-8\u0022,\r\n \u0022content-length\u0022: \u002246\u0022,\r\n \u0022date\u0022: \u0022Wed, 05 Sep 2018 15:02:12 GMT\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022\r\n }\r\n },\r\n \u0022app\u0022: {\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022baseDir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server\u0022,\r\n \u0022subdomainOffset\u0022: 2,\r\n \u0022config\u0022: \u0022\u003Cegg config\u003E\u0022,\r\n \u0022controller\u0022: \u0022\u003Cegg controller\u003E\u0022,\r\n \u0022httpclient\u0022: \u0022\u003Cegg httpclient\u003E\u0022,\r\n \u0022loggers\u0022: \u0022\u003Cegg loggers\u003E\u0022,\r\n \u0022middlewares\u0022: \u0022\u003Cegg middlewares\u003E\u0022,\r\n \u0022router\u0022: \u0022\u003Cegg router\u003E\u0022,\r\n \u0022serviceClasses\u0022: \u0022\u003Cegg serviceClasses\u003E\u0022\r\n },\r\n \u0022originalUrl\u0022: \u0022/cart.html\u0022,\r\n \u0022req\u0022: \u0022\u003Coriginal node req\u003E\u0022,\r\n \u0022res\u0022: \u0022\u003Coriginal node res\u003E\u0022,\r\n \u0022socket\u0022: \u0022\u003Coriginal node socket\u003E\u0022\r\n },\r\n \u0022request\u0022: {\r\n \u0022method\u0022: \u0022GET\u0022,\r\n \u0022url\u0022: \u0022/cart.html\u0022,\r\n \u0022header\u0022: {\r\n \u0022host\u0022: \u0022127.0.0.1:5047\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022,\r\n \u0022cache-control\u0022: \u0022max-age=0\u0022,\r\n \u0022upgrade-insecure-requests\u0022: \u00221\u0022,\r\n \u0022user-agent\u0022: \u0022Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36\u0022,\r\n \u0022accept\u0022: \u0022text/html,application/xhtml\u002Bxml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\u0022,\r\n \u0022accept-encoding\u0022: \u0022gzip, deflate, br\u0022,\r\n \u0022accept-language\u0022: \u0022zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\u0022,\r\n \u0022cookie\u0022: \u0022__da_ntes_utmfc=utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); kl_newpopup=1; _klhtxd_=31; __da_ntes_utmz=96992031.1530068012.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); JSESSIONID-WKL-8IO=b7phrfKchYjexzeULtELDeVeZS91Z%2FjYGtvE8yqiqU910ynGhjMLmpl2GlG7JB0%2F76b9ylIEocyVTgt8nByp5zQ74y826d9WyL%2BeG7vtco4Yh4CRijVjWlLlXMrkEvvUI58MaTxuJVYYOn6qhk5%5Cbb7XseZzHOJ5XIgu4Jj22RJEhzsL%3A1536234339063; davisit=NaN; __da_ntes_utma=96992031.1400796450.1508141878.1536147939.1536157980.22; _gat=1; _pzfxuvpc=1530068013101%7C1274204976745690252%7C10%7C1536159725360%7C3%7C3048211491399422318%7C9125971977150536027; _pzfxsvpc=9125971977150536027%7C1536158517682%7C4%7C; _ga=GA1.4.412449949.1508141879; _gid=GA1.4.352767971.1536147939; _dc_gtm_UA-60320154-1=1; __da_ntes_utmb=96992031.160.10.1536157980\u0022\r\n }\r\n },\r\n \u0022helper\u0022: {\r\n \u0022ctx\u0022: {\r\n \u0022request\u0022: {\r\n \u0022method\u0022: \u0022GET\u0022,\r\n \u0022url\u0022: \u0022/cart.html\u0022,\r\n \u0022header\u0022: {\r\n \u0022host\u0022: \u0022127.0.0.1:5047\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022,\r\n \u0022cache-control\u0022: \u0022max-age=0\u0022,\r\n \u0022upgrade-insecure-requests\u0022: \u00221\u0022,\r\n \u0022user-agent\u0022: \u0022Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36\u0022,\r\n \u0022accept\u0022: \u0022text/html,application/xhtml\u002Bxml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\u0022,\r\n \u0022accept-encoding\u0022: \u0022gzip, deflate, br\u0022,\r\n \u0022accept-language\u0022: \u0022zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\u0022,\r\n \u0022cookie\u0022: \u0022__da_ntes_utmfc=utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); kl_newpopup=1; _klhtxd_=31; __da_ntes_utmz=96992031.1530068012.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); JSESSIONID-WKL-8IO=b7phrfKchYjexzeULtELDeVeZS91Z%2FjYGtvE8yqiqU910ynGhjMLmpl2GlG7JB0%2F76b9ylIEocyVTgt8nByp5zQ74y826d9WyL%2BeG7vtco4Yh4CRijVjWlLlXMrkEvvUI58MaTxuJVYYOn6qhk5%5Cbb7XseZzHOJ5XIgu4Jj22RJEhzsL%3A1536234339063; davisit=NaN; __da_ntes_utma=96992031.1400796450.1508141878.1536147939.1536157980.22; _gat=1; _pzfxuvpc=1530068013101%7C1274204976745690252%7C10%7C1536159725360%7C3%7C3048211491399422318%7C9125971977150536027; _pzfxsvpc=9125971977150536027%7C1536158517682%7C4%7C; _ga=GA1.4.412449949.1508141879; _gid=GA1.4.352767971.1536147939; _dc_gtm_UA-60320154-1=1; __da_ntes_utmb=96992031.160.10.1536157980\u0022\r\n }\r\n },\r\n \u0022response\u0022: {\r\n \u0022status\u0022: 200,\r\n \u0022message\u0022: \u0022OK\u0022,\r\n \u0022header\u0022: {\r\n \u0022content-type\u0022: \u0022text/html; charset=utf-8\u0022,\r\n \u0022content-length\u0022: \u002246\u0022,\r\n \u0022date\u0022: \u0022Wed, 05 Sep 2018 15:02:12 GMT\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022\r\n }\r\n },\r\n \u0022app\u0022: {\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022baseDir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server\u0022,\r\n \u0022subdomainOffset\u0022: 2,\r\n \u0022config\u0022: \u0022\u003Cegg config\u003E\u0022,\r\n \u0022controller\u0022: \u0022\u003Cegg controller\u003E\u0022,\r\n \u0022httpclient\u0022: \u0022\u003Cegg httpclient\u003E\u0022,\r\n \u0022loggers\u0022: \u0022\u003Cegg loggers\u003E\u0022,\r\n \u0022middlewares\u0022: \u0022\u003Cegg middlewares\u003E\u0022,\r\n \u0022router\u0022: \u0022\u003Cegg router\u003E\u0022,\r\n \u0022serviceClasses\u0022: \u0022\u003Cegg serviceClasses\u003E\u0022\r\n },\r\n \u0022originalUrl\u0022: \u0022/cart.html\u0022,\r\n \u0022req\u0022: \u0022\u003Coriginal node req\u003E\u0022,\r\n \u0022res\u0022: \u0022\u003Coriginal node res\u003E\u0022,\r\n \u0022socket\u0022: \u0022\u003Coriginal node socket\u003E\u0022\r\n },\r\n \u0022app\u0022: {\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022baseDir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server\u0022,\r\n \u0022subdomainOffset\u0022: 2,\r\n \u0022config\u0022: \u0022\u003Cegg config\u003E\u0022,\r\n \u0022controller\u0022: \u0022\u003Cegg controller\u003E\u0022,\r\n \u0022httpclient\u0022: \u0022\u003Cegg httpclient\u003E\u0022,\r\n \u0022loggers\u0022: \u0022\u003Cegg loggers\u003E\u0022,\r\n \u0022middlewares\u0022: \u0022\u003Cegg middlewares\u003E\u0022,\r\n \u0022router\u0022: \u0022\u003Cegg router\u003E\u0022,\r\n \u0022serviceClasses\u0022: \u0022\u003Cegg serviceClasses\u003E\u0022\r\n },\r\n \u0022config\u0022: {\r\n \u0022session\u0022: {\r\n \u0022maxAge\u0022: 86400000,\r\n \u0022key\u0022: \u0022EGG_SESS\u0022,\r\n \u0022httpOnly\u0022: true,\r\n \u0022encrypt\u0022: true,\r\n \u0022overwrite\u0022: true,\r\n \u0022signed\u0022: true\r\n },\r\n \u0022security\u0022: {\r\n \u0022domainWhiteList\u0022: [\u0022.kaola.com\u0022, \u0022.kaola.com.hk\u0022, \u0022.netease.com\u0022, \u0022.127.net\u0022, \u0022.126.net\u0022, \u0022.163.com\u0022, \u0022.netease.com\u0022],\r\n \u0022protocolWhiteList\u0022: [],\r\n \u0022defaultMiddleware\u0022: \u0022csrf,hsts,methodnoallow,noopen,nosniff,csp,xssProtection,xframe,dta\u0022,\r\n \u0022csrf\u0022: {\r\n \u0022enable\u0022: false,\r\n \u0022useSession\u0022: false,\r\n \u0022ignoreJSON\u0022: false,\r\n \u0022cookieName\u0022: \u0022csrfToken\u0022,\r\n \u0022sessionName\u0022: \u0022csrfToken\u0022,\r\n \u0022headerName\u0022: \u0022x-csrf-token\u0022,\r\n \u0022bodyName\u0022: \u0022_csrf\u0022,\r\n \u0022queryName\u0022: \u0022_csrf\u0022\r\n },\r\n \u0022xframe\u0022: {\r\n \u0022enable\u0022: true,\r\n \u0022value\u0022: \u0022SAMEORIGIN\u0022\r\n },\r\n \u0022hsts\u0022: {\r\n \u0022enable\u0022: false,\r\n \u0022maxAge\u0022: 31536000,\r\n \u0022includeSubdomains\u0022: false\r\n },\r\n \u0022dta\u0022: {\r\n \u0022enable\u0022: true\r\n },\r\n \u0022methodnoallow\u0022: {\r\n \u0022enable\u0022: true\r\n },\r\n \u0022noopen\u0022: {\r\n \u0022enable\u0022: true\r\n },\r\n \u0022nosniff\u0022: {\r\n \u0022enable\u0022: true\r\n },\r\n \u0022referrerPolicy\u0022: {\r\n \u0022enable\u0022: false,\r\n \u0022value\u0022: \u0022no-referrer-when-downgrade\u0022\r\n },\r\n \u0022xssProtection\u0022: {\r\n \u0022enable\u0022: true,\r\n \u0022value\u0022: \u00221; mode=block\u0022\r\n },\r\n \u0022csp\u0022: {\r\n \u0022enable\u0022: false,\r\n \u0022policy\u0022: {}\r\n },\r\n \u0022ssrf\u0022: {\r\n \u0022ipBlackList\u0022: null,\r\n \u0022checkAddress\u0022: null\r\n }\r\n },\r\n \u0022helper\u0022: {\r\n \u0022shtml\u0022: {}\r\n },\r\n \u0022jsonp\u0022: {\r\n \u0022limit\u0022: 50,\r\n \u0022callback\u0022: [\u0022_callback\u0022, \u0022callback\u0022],\r\n \u0022csrf\u0022: false\r\n },\r\n \u0022onerror\u0022: {\r\n \u0022errorPageUrl\u0022: \u0022\u0022,\r\n \u0022appErrorFilter\u0022: null,\r\n \u0022templatePath\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-onerror/lib/onerror_page.mustache\u0022\r\n },\r\n \u0022i18n\u0022: {\r\n \u0022defaultLocale\u0022: \u0022en_US\u0022,\r\n \u0022dirs\u0022: [\u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-session/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-security/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-jsonp/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-onerror/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-i18n/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-watcher/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-multipart/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-development/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-schedule/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-logrotator/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-static/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-view/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-registry/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-shared-data/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-zookeeper/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-metrics/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-nss/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-mock/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-health/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-kafka/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-proxy/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-view-art-template/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp/config/locales\u0022, \u0022/Users/will/Work/kaola-tradecenter-fed/server/config/locales\u0022],\r\n \u0022queryField\u0022: \u0022locale\u0022,\r\n \u0022cookieField\u0022: \u0022locale\u0022,\r\n \u0022cookieMaxAge\u0022: \u00221y\u0022,\r\n \u0022functionName\u0022: \u0022__\u0022\r\n },\r\n \u0022watcher\u0022: {\r\n \u0022type\u0022: \u0022development\u0022,\r\n \u0022eventSources\u0022: {\r\n \u0022default\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-watcher/lib/event-sources/default\u0022,\r\n \u0022development\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/egg-watcher/lib/event-sources/development\u0022\r\n }\r\n },\r\n \u0022multipart\u0022: {\r\n \u0022autoFields\u0022: false,\r\n \u0022defaultCharset\u0022: \u0022utf8\u0022,\r\n \u0022fieldNameSize\u0022: 100,\r\n \u0022fieldSize\u0022: 102400,\r\n \u0022fields\u0022: 10,\r\n \u0022fileSize\u0022: 10485760,\r\n \u0022files\u0022: 10,\r\n \u0022fileExtensions\u0022: [],\r\n \u0022whitelist\u0022: null\r\n },\r\n \u0022development\u0022: {\r\n \u0022watchDirs\u0022: [],\r\n \u0022ignoreDirs\u0022: [],\r\n \u0022fastReady\u0022: false,\r\n \u0022reloadOnDebug\u0022: true,\r\n \u0022overrideDefault\u0022: false\r\n },\r\n \u0022customLogger\u0022: {\r\n \u0022scheduleLogger\u0022: {\r\n \u0022consoleLevel\u0022: \u0022NONE\u0022,\r\n \u0022file\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/logs/kaola-tradecenter-fed/egg-schedule.log\u0022\r\n }\r\n },\r\n \u0022logrotator\u0022: {\r\n \u0022filesRotateByHour\u0022: null,\r\n \u0022hourDelimiter\u0022: \u0022-\u0022,\r\n \u0022filesRotateBySize\u0022: null,\r\n \u0022maxFileSize\u0022: 52428800,\r\n \u0022maxFiles\u0022: 10,\r\n \u0022rotateDuration\u0022: 60000,\r\n \u0022maxDays\u0022: 31\r\n },\r\n \u0022static\u0022: {\r\n \u0022prefix\u0022: \u0022/public/\u0022,\r\n \u0022dir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/app/public\u0022,\r\n \u0022dynamic\u0022: true,\r\n \u0022preload\u0022: false,\r\n \u0022buffer\u0022: false,\r\n \u0022maxFiles\u0022: 1000,\r\n \u0022files\u0022: {\r\n \u0022max\u0022: 1000,\r\n \u0022size\u0022: 5,\r\n \u0022cache\u0022: {},\r\n \u0022_cache\u0022: {}\r\n }\r\n },\r\n \u0022view\u0022: {\r\n \u0022root\u0022: [\u0022/Users/will/Work/kaola-tradecenter-fed/server/app/view\u0022],\r\n \u0022cache\u0022: false,\r\n \u0022defaultExtension\u0022: \u0022.html\u0022,\r\n \u0022defaultViewEngine\u0022: \u0022viewArtTemplate\u0022,\r\n \u0022mapping\u0022: {}\r\n },\r\n \u0022store\u0022: {},\r\n \u0022metrics\u0022: {\r\n \u0022size\u0022: 1000,\r\n \u0022erorrSize\u0022: 100,\r\n \u0022addupMetrics\u0022: {},\r\n \u0022urlCategories\u0022: {}\r\n },\r\n \u0022nss\u0022: {\r\n \u0022outputFormat\u0022: \u0022text\u0022\r\n },\r\n \u0022mock\u0022: {\r\n \u0022port\u0022: 6045,\r\n \u0022secure\u0022: false,\r\n \u0022viewRoot\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-mock/config\u0022,\r\n \u0022routes\u0022: [],\r\n \u0022statics\u0022: [],\r\n \u0022syncData\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/node_modules/@kaola/kapp-mock/config\u0022,\r\n \u0022asyncData\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/mock\u0022,\r\n \u0022plugins\u0022: {\r\n \u0022mock-control\u0022: {},\r\n \u0022route-display\u0022: {\r\n \u0022options\u0022: {\r\n \u0022path\u0022: \u0022/_routes\u0022\r\n }\r\n },\r\n \u0022auto-mount\u0022: {\r\n \u0022tplUrlMap\u0022: {}\r\n }\r\n },\r\n \u0022argv\u0022: {}\r\n },\r\n \u0022health\u0022: {\r\n \u0022ipWhiteList\u0022: [\u0022172.17.1.18\u0022, \u002210.164.137.6\u0022, \u002210.164.137.8\u0022, \u002210.172.27.233\u0022, \u002210.172.27.235\u0022, \u0022127.0.0.1\u0022],\r\n \u0022statusUrl\u0022: \u0022/health/status\u0022,\r\n \u0022activeUrl\u0022: \u0022/health/active\u0022,\r\n \u0022offlineUrl\u0022: \u0022/health/offline\u0022\r\n },\r\n \u0022kafka\u0022: {\r\n \u0022timeout\u0022: 10000\r\n },\r\n \u0022proxy\u0022: {\r\n \u0022checkHealth\u0022: false,\r\n \u0022proxies\u0022: {\r\n \u0022wap\u0022: {\r\n \u0022host\u0022: \u0022m-trade.kaola.com\u0022,\r\n \u0022target\u0022: \u0022http://127.0.0.1:6045\u0022\r\n },\r\n \u0022web\u0022: {\r\n \u0022host\u0022: \u0022trade.kaola.com\u0022,\r\n \u0022target\u0022: \u0022http://127.0.0.1:6045\u0022\r\n }\r\n }\r\n },\r\n \u0022viewArtTemplate\u0022: {\r\n \u0022writeResp\u0022: true,\r\n \u0022debug\u0022: false,\r\n \u0022htmlMinifierOptions\u0022: {\r\n \u0022collapseWhitespace\u0022: true,\r\n \u0022minifyCSS\u0022: false,\r\n \u0022minifyJS\u0022: false,\r\n \u0022ignoreCustomFragments\u0022: []\r\n },\r\n \u0022imports\u0022: {\r\n \u0022string\u0022: {},\r\n \u0022time\u0022: {},\r\n \u0022url\u0022: {},\r\n \u0022types\u0022: {},\r\n \u0022util\u0022: {}\r\n },\r\n \u0022compileDebug\u0022: true,\r\n \u0022cache\u0022: false,\r\n \u0022minimize\u0022: false\r\n },\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022keys\u0022: \u0022kaola-tradecenter-fed_1513150693658_4046\u0022,\r\n \u0022protocolHeaders\u0022: \u0022x-forwarded-proto\u0022,\r\n \u0022ipHeaders\u0022: \u0022x-forwarded-for\u0022,\r\n \u0022hostHeaders\u0022: \u0022\u0022,\r\n \u0022pkg\u0022: {\r\n \u0022dependencies\u0022: {\r\n \u0022@kaola/kapp\u0022: \u00221.4.10\u0022,\r\n \u0022@kaola/kaola-haitaoweb-arttemplate\u0022: \u00220.3.3-dev4\u0022,\r\n \u0022egg\u0022: \u0022^2.3.0\u0022,\r\n \u0022egg-cors\u0022: \u0022^2.0.0\u0022\r\n },\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022version\u0022: \u00221.0.0\u0022,\r\n \u0022private\u0022: true,\r\n \u0022lint-staged\u0022: {\r\n \u0022**/*.js\u0022: [\u0022eslint --fix\u0022, \u0022git add\u0022]\r\n },\r\n \u0022devDependencies\u0022: {\r\n \u0022autod\u0022: \u0022^3.0.1\u0022,\r\n \u0022autod-egg\u0022: \u0022^1.0.0\u0022,\r\n \u0022axios\u0022: \u0022^0.17.1\u0022,\r\n \u0022babel-eslint\u0022: \u0022^8.2.1\u0022,\r\n \u0022cross-env\u0022: \u0022^5.1.3\u0022,\r\n \u0022egg-bin\u0022: \u0022^4.3.5\u0022,\r\n \u0022egg-ci\u0022: \u0022^1.8.0\u0022,\r\n \u0022egg-mock\u0022: \u0022^3.13.0\u0022,\r\n \u0022egg-scripts\u0022: \u0022^2.1.0\u0022,\r\n \u0022eslint\u0022: \u0022^4.16.0\u0022,\r\n \u0022eslint-config-kaola\u0022: \u0022^0.1.3\u0022,\r\n \u0022husky\u0022: \u0022^0.14.3\u0022,\r\n \u0022lint-staged\u0022: \u0022^6.1.0\u0022,\r\n \u0022webstorm-disable-index\u0022: \u0022^1.2.0\u0022\r\n },\r\n \u0022engines\u0022: {\r\n \u0022node\u0022: \u0022\u003E=8.9.0\u0022\r\n },\r\n \u0022scripts\u0022: {\r\n \u0022precommit\u0022: \u0022lint-staged\u0022,\r\n \u0022egg-scripts\u0022: \u0022node ./node_modules/egg-scripts/bin/egg-scripts\u0022,\r\n \u0022egg-bin\u0022: \u0022node ./node_modules/egg-bin/bin/egg-bin\u0022,\r\n \u0022cross-env\u0022: \u0022node ./node_modules/cross-env/dist/bin/cross-env\u0022,\r\n \u0022start\u0022: \u0022npm run egg-scripts -- start --title=kaola-tradecenter-fed\u0022,\r\n \u0022stop\u0022: \u0022npm run egg-scripts -- stop --title=kaola-tradecenter-fed\u0022,\r\n \u0022debug\u0022: \u0022npm run egg-bin -- debug\u0022,\r\n \u0022dev\u0022: \u0022npm run egg-bin -- dev\u0022,\r\n \u0022test\u0022: \u0022npm run egg-bin -- test\u0022,\r\n \u0022cov\u0022: \u0022npm run egg-bin -- cov\u0022,\r\n \u0022lint\u0022: \u0022eslint . --ignore-path .gitignore\u0022,\r\n \u0022ci\u0022: \u0022npm run lint \u0026\u0026 npm run cov\u0022,\r\n \u0022autod\u0022: \u0022autod\u0022,\r\n \u0022install:wap\u0022: \u0022npm i --prefix=./client/wap/deploy/ \u0026\u0026 npm i --prefix=./client/wap/\u0022,\r\n \u0022install:web\u0022: \u0022npm i --prefix=./client/web/deploy/ \u0026\u0026 npm i --prefix=./client/web/\u0022,\r\n \u0022builddev:wap\u0022: \u0022npm run builddll --prefix=./client/wap/deploy/ \u0026\u0026 npm run builddev --prefix=./client/wap/deploy/\u0022,\r\n \u0022builddev:web\u0022: \u0022npm run builddll --prefix=./client/web/deploy/ \u0026\u0026 npm run builddev --prefix=./client/web/deploy/\u0022,\r\n \u0022convert\u0022: \u0022node ./toolkits/convert-template-syntax.js --glob=./client/web/template/pages/order/*.ftl --type=web\u0022\r\n },\r\n \u0022ci\u0022: {\r\n \u0022version\u0022: \u00228\u0022\r\n },\r\n \u0022repository\u0022: {\r\n \u0022type\u0022: \u0022git\u0022,\r\n \u0022url\u0022: \u0022\u0022\r\n },\r\n \u0022egg\u0022: {\r\n \u0022framework\u0022: \u0022@kaola/kapp\u0022\r\n },\r\n \u0022author\u0022: \u0022\u0022,\r\n \u0022license\u0022: \u0022MIT\u0022,\r\n \u0022main\u0022: \u0022app.js\u0022,\r\n \u0022directories\u0022: {\r\n \u0022lib\u0022: \u0022lib\u0022,\r\n \u0022test\u0022: \u0022test\u0022\r\n },\r\n \u0022keywords\u0022: [],\r\n \u0022description\u0022: \u0022\u0022\r\n },\r\n \u0022baseDir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server\u0022,\r\n \u0022HOME\u0022: \u0022/Users/will\u0022,\r\n \u0022rundir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/run\u0022,\r\n \u0022dump\u0022: {\r\n \u0022ignore\u0022: {}\r\n },\r\n \u0022confusedConfigurations\u0022: {\r\n \u0022bodyparser\u0022: \u0022bodyParser\u0022,\r\n \u0022notFound\u0022: \u0022notfound\u0022,\r\n \u0022sitefile\u0022: \u0022siteFile\u0022,\r\n \u0022middlewares\u0022: \u0022middleware\u0022,\r\n \u0022httpClient\u0022: \u0022httpclient\u0022\r\n },\r\n \u0022notfound\u0022: {\r\n \u0022pageUrl\u0022: \u0022\u0022\r\n },\r\n \u0022siteFile\u0022: {\r\n \u0022/favicon.ico\u0022: \u0022https://haitao.nos.netease.com/82fef7a9-0059-422f-8f70-a2a90d363e8b_16_16.ico\u0022\r\n },\r\n \u0022bodyParser\u0022: {\r\n \u0022enable\u0022: true,\r\n \u0022encoding\u0022: \u0022utf8\u0022,\r\n \u0022formLimit\u0022: \u0022100kb\u0022,\r\n \u0022jsonLimit\u0022: \u0022100kb\u0022,\r\n \u0022strict\u0022: true,\r\n \u0022queryString\u0022: {\r\n \u0022arrayLimit\u0022: 100,\r\n \u0022depth\u0022: 5,\r\n \u0022parameterLimit\u0022: 1000,\r\n \u0022allowDots\u0022: true\r\n },\r\n \u0022returnRawBody\u0022: true\r\n },\r\n \u0022logger\u0022: {\r\n \u0022dir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server/logs/elk\u0022,\r\n \u0022encoding\u0022: \u0022utf8\u0022,\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022level\u0022: \u0022INFO\u0022,\r\n \u0022consoleLevel\u0022: \u0022INFO\u0022,\r\n \u0022disableConsoleAfterReady\u0022: false,\r\n \u0022outputJSON\u0022: false,\r\n \u0022buffer\u0022: true,\r\n \u0022appLogName\u0022: \u0022kaola-tradecenter-fed-web.log\u0022,\r\n \u0022coreLogName\u0022: \u0022egg-web.log\u0022,\r\n \u0022agentLogName\u0022: \u0022egg-agent.log\u0022,\r\n \u0022errorLogName\u0022: \u0022common-error.log\u0022,\r\n \u0022coreLogger\u0022: {\r\n \u0022consoleLevel\u0022: \u0022WARN\u0022\r\n },\r\n \u0022allowDebugAtProd\u0022: false,\r\n \u0022type\u0022: \u0022application\u0022\r\n },\r\n \u0022httpclient\u0022: {\r\n \u0022enableDNSCache\u0022: true,\r\n \u0022dnsCacheMaxLength\u0022: 1000,\r\n \u0022dnsCacheMaxAge\u0022: 10000,\r\n \u0022request\u0022: {\r\n \u0022timeout\u0022: 5000\r\n },\r\n \u0022httpAgent\u0022: {\r\n \u0022keepAlive\u0022: true,\r\n \u0022freeSocketKeepAliveTimeout\u0022: 4000,\r\n \u0022maxSockets\u0022: 9007199254740991,\r\n \u0022maxFreeSockets\u0022: 256,\r\n \u0022timeout\u0022: 30000\r\n },\r\n \u0022httpsAgent\u0022: {\r\n \u0022keepAlive\u0022: true,\r\n \u0022freeSocketKeepAliveTimeout\u0022: 4000,\r\n \u0022maxSockets\u0022: 9007199254740991,\r\n \u0022maxFreeSockets\u0022: 256,\r\n \u0022timeout\u0022: 30000\r\n }\r\n },\r\n \u0022meta\u0022: {\r\n \u0022enable\u0022: true,\r\n \u0022logging\u0022: false\r\n },\r\n \u0022coreMiddleware\u0022: [\u0022meta\u0022, \u0022siteFile\u0022, \u0022notfound\u0022, \u0022static\u0022, \u0022bodyParser\u0022, \u0022overrideMethod\u0022, \u0022session\u0022, \u0022securities\u0022, \u0022i18n\u0022, \u0022accessMetrics\u0022, \u0022nss\u0022, \u0022health\u0022, \u0022locals\u0022],\r\n \u0022workerStartTimeout\u0022: 600000,\r\n \u0022cluster\u0022: {\r\n \u0022listen\u0022: {\r\n \u0022path\u0022: \u0022\u0022,\r\n \u0022port\u0022: 5047,\r\n \u0022hostname\u0022: \u0022\u0022\r\n }\r\n },\r\n \u0022clusterClient\u0022: {\r\n \u0022maxWaitTime\u0022: 60000,\r\n \u0022responseTimeout\u0022: 60000\r\n },\r\n \u0022onClientError\u0022: null,\r\n \u0022kaolaEnv\u0022: \u0022local\u0022,\r\n \u0022isLocal\u0022: true,\r\n \u0022isPre\u0022: false,\r\n \u0022isOnline\u0022: false,\r\n \u0022isTest\u0022: false,\r\n \u0022alinode\u0022: {\r\n \u0022server\u0022: \u0022wss://agentserver.node.aliyun.com:8080\u0022\r\n },\r\n \u0022middleware\u0022: [],\r\n \u0022disconf\u0022: {\r\n \u0022application\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022fetchRemoteKappConfig\u0022: false,\r\n \u0022groups\u0022: [{\r\n \u0022type\u0022: \u0022static\u0022,\r\n \u0022name\u0022: \u0022proxy\u0022,\r\n \u0022env\u0022: \u0022local\u0022\r\n }]\r\n },\r\n \u0022cors\u0022: {\r\n \u0022allowMethods\u0022: \u0022GET,HEAD,POST,PUT,DELETE,TRACE,OPTIONS,PATCH\u0022,\r\n \u0022exposeHeaders\u0022: [],\r\n \u0022allowHeaders\u0022: \u0022Content-Type,X-Requested-With,ursAuth,origin,ursid,urstoken\u0022,\r\n \u0022maxAge\u0022: \u002286400\u0022,\r\n \u0022credentials\u0022: true,\r\n \u0022keepHeadersOnError\u0022: true\r\n },\r\n \u0022coreMiddlewares\u0022: [\u0022meta\u0022, \u0022siteFile\u0022, \u0022notfound\u0022, \u0022static\u0022, \u0022bodyParser\u0022, \u0022overrideMethod\u0022, \u0022session\u0022, \u0022securities\u0022, \u0022i18n\u0022, \u0022accessMetrics\u0022, \u0022nss\u0022, \u0022health\u0022, \u0022locals\u0022],\r\n \u0022appMiddlewares\u0022: [],\r\n \u0022appMiddleware\u0022: [],\r\n \u0022multipartParseOptions\u0022: {\r\n \u0022autoFields\u0022: false,\r\n \u0022defCharset\u0022: \u0022utf8\u0022,\r\n \u0022limits\u0022: {\r\n \u0022fieldNameSize\u0022: 100,\r\n \u0022fieldSize\u0022: 102400,\r\n \u0022fields\u0022: 10,\r\n \u0022fileSize\u0022: 10485760,\r\n \u0022files\u0022: 10\r\n }\r\n }\r\n },\r\n \u0022service\u0022: {\r\n \u0022_cache\u0022: {},\r\n \u0022_ctx\u0022: {\r\n \u0022request\u0022: {\r\n \u0022method\u0022: \u0022GET\u0022,\r\n \u0022url\u0022: \u0022/cart.html\u0022,\r\n \u0022header\u0022: {\r\n \u0022host\u0022: \u0022127.0.0.1:5047\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022,\r\n \u0022cache-control\u0022: \u0022max-age=0\u0022,\r\n \u0022upgrade-insecure-requests\u0022: \u00221\u0022,\r\n \u0022user-agent\u0022: \u0022Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36\u0022,\r\n \u0022accept\u0022: \u0022text/html,application/xhtml\u002Bxml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\u0022,\r\n \u0022accept-encoding\u0022: \u0022gzip, deflate, br\u0022,\r\n \u0022accept-language\u0022: \u0022zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7\u0022,\r\n \u0022cookie\u0022: \u0022__da_ntes_utmfc=utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); kl_newpopup=1; _klhtxd_=31; __da_ntes_utmz=96992031.1530068012.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none); JSESSIONID-WKL-8IO=b7phrfKchYjexzeULtELDeVeZS91Z%2FjYGtvE8yqiqU910ynGhjMLmpl2GlG7JB0%2F76b9ylIEocyVTgt8nByp5zQ74y826d9WyL%2BeG7vtco4Yh4CRijVjWlLlXMrkEvvUI58MaTxuJVYYOn6qhk5%5Cbb7XseZzHOJ5XIgu4Jj22RJEhzsL%3A1536234339063; davisit=NaN; __da_ntes_utma=96992031.1400796450.1508141878.1536147939.1536157980.22; _gat=1; _pzfxuvpc=1530068013101%7C1274204976745690252%7C10%7C1536159725360%7C3%7C3048211491399422318%7C9125971977150536027; _pzfxsvpc=9125971977150536027%7C1536158517682%7C4%7C; _ga=GA1.4.412449949.1508141879; _gid=GA1.4.352767971.1536147939; _dc_gtm_UA-60320154-1=1; __da_ntes_utmb=96992031.160.10.1536157980\u0022\r\n }\r\n },\r\n \u0022response\u0022: {\r\n \u0022status\u0022: 200,\r\n \u0022message\u0022: \u0022OK\u0022,\r\n \u0022header\u0022: {\r\n \u0022content-type\u0022: \u0022text/html; charset=utf-8\u0022,\r\n \u0022content-length\u0022: \u002246\u0022,\r\n \u0022date\u0022: \u0022Wed, 05 Sep 2018 15:02:12 GMT\u0022,\r\n \u0022connection\u0022: \u0022keep-alive\u0022\r\n }\r\n },\r\n \u0022app\u0022: {\r\n \u0022env\u0022: \u0022local\u0022,\r\n \u0022name\u0022: \u0022kaola-tradecenter-fed\u0022,\r\n \u0022baseDir\u0022: \u0022/Users/will/Work/kaola-tradecenter-fed/server\u0022,\r\n \u0022subdomainOffset\u0022: 2,\r\n \u0022config\u0022: \u0022\u003Cegg config\u003E\u0022,\r\n \u0022controller\u0022: \u0022\u003Cegg controller\u003E\u0022,\r\n \u0022httpclient\u0022: \u0022\u003Cegg httpclient\u003E\u0022,\r\n \u0022loggers\u0022: \u0022\u003Cegg loggers\u003E\u0022,\r\n \u0022middlewares\u0022: \u0022\u003Cegg middlewares\u003E\u0022,\r\n \u0022router\u0022: \u0022\u003Cegg router\u003E\u0022,\r\n \u0022serviceClasses\u0022: \u0022\u003Cegg serviceClasses\u003E\u0022\r\n },\r\n \u0022originalUrl\u0022: \u0022/cart.html\u0022,\r\n \u0022req\u0022: \u0022\u003Coriginal node req\u003E\u0022,\r\n \u0022res\u0022: \u0022\u003Coriginal node res\u003E\u0022,\r\n \u0022socket\u0022: \u0022\u003Coriginal node socket\u003E\u0022\r\n }\r\n }\r\n },\r\n \u0022buyDomainUrl\u0022: \u0022/\u0022,\r\n \u0022isTestEnvironment\u0022: false\r\n};\r\nconst finalObject = Object.assign(firstObject, secondObject);","IsDeferred":false}]}