[{"data":1,"prerenderedAt":861},["ShallowReactive",2],{"navigation":3,"-examples-handle-query":195,"-examples-handle-query-surround":856},[4,92,139,171,178],{"title":5,"path":6,"stem":7,"children":8,"icon":91},"Guide","\u002Fguide","1.guide\u002F0.index",[9,12,54,70],{"title":10,"path":6,"stem":7,"icon":11},"入门指南","pixel:play",{"title":13,"icon":14,"path":15,"stem":16,"children":17,"page":53},"Basics","ph:book-open-duotone","\u002Fguide\u002Fbasics","1.guide\u002F1.basics",[18,23,28,33,38,43,48],{"title":19,"path":20,"stem":21,"icon":22},"请求生命周期","\u002Fguide\u002Fbasics\u002Flifecycle","1.guide\u002F1.basics\u002F1.lifecycle","icon-park-outline:handle-round",{"title":24,"path":25,"stem":26,"icon":27},"路由","\u002Fguide\u002Fbasics\u002Frouting","1.guide\u002F1.basics\u002F2.routing","solar:routing-bold",{"title":29,"path":30,"stem":31,"icon":32},"中间件","\u002Fguide\u002Fbasics\u002Fmiddleware","1.guide\u002F1.basics\u002F3.middleware","mdi:middleware-outline",{"title":34,"path":35,"stem":36,"icon":37},"事件处理器","\u002Fguide\u002Fbasics\u002Fhandler","1.guide\u002F1.basics\u002F4.handler","mdi:function",{"title":39,"path":40,"stem":41,"icon":42},"发送响应","\u002Fguide\u002Fbasics\u002Fresponse","1.guide\u002F1.basics\u002F5.response","tabler:json",{"title":44,"path":45,"stem":46,"icon":47},"错误处理","\u002Fguide\u002Fbasics\u002Ferror","1.guide\u002F1.basics\u002F6.error","tabler:error-404",{"title":49,"path":50,"stem":51,"icon":52},"嵌套应用","\u002Fguide\u002Fbasics\u002Fnested-apps","1.guide\u002F1.basics\u002F7.nested-apps","material-symbols-light:layers-outline",false,{"title":55,"icon":56,"path":57,"stem":58,"children":59,"page":53},"API","material-symbols-light:api-rounded","\u002Fguide\u002Fapi","1.guide\u002F900.api",[60,65],{"title":61,"path":62,"stem":63,"icon":64},"H3","\u002Fguide\u002Fapi\u002Fh3","1.guide\u002F900.api\u002F1.h3","material-symbols:bolt-rounded",{"title":66,"path":67,"stem":68,"icon":69},"H3Event","\u002Fguide\u002Fapi\u002Fh3event","1.guide\u002F900.api\u002F2.h3event","material-symbols:data-object-rounded",{"title":71,"icon":72,"path":73,"stem":74,"children":75,"page":53},"Advanced","hugeicons:more-01","\u002Fguide\u002Fadvanced","1.guide\u002F901.advanced",[76,81,86],{"title":77,"path":78,"stem":79,"icon":80},"Plugins","\u002Fguide\u002Fadvanced\u002Fplugins","1.guide\u002F901.advanced\u002F1.plugins","clarity:plugin-line",{"title":82,"path":83,"stem":84,"icon":85},"WebSockets","\u002Fguide\u002Fadvanced\u002Fwebsocket","1.guide\u002F901.advanced\u002F2.websocket","hugeicons:live-streaming-02",{"title":87,"path":88,"stem":89,"icon":90},"每夜构建","\u002Fguide\u002Fadvanced\u002Fnightly","1.guide\u002F901.advanced\u002F9.nightly","game-icons:barn-owl","i-ph:book-open-duotone",{"title":93,"path":94,"stem":95,"children":96,"icon":98},"工具集","\u002Futils","2.utils\u002F0.index",[97,99,104,109,114,119,124,129,134],{"title":93,"path":94,"stem":95,"icon":98},"ph:function-bold",{"title":100,"path":101,"stem":102,"icon":103},"请求","\u002Futils\u002Frequest","2.utils\u002F1.request","material-symbols-light:input",{"title":105,"path":106,"stem":107,"icon":108},"响应","\u002Futils\u002Fresponse","2.utils\u002F2.response","material-symbols-light:output",{"title":110,"path":111,"stem":112,"icon":113},"Cookie","\u002Futils\u002Fcookie","2.utils\u002F3.cookie","material-symbols:cookie-outline",{"title":115,"path":116,"stem":117,"icon":118},"安全","\u002Futils\u002Fsecurity","2.utils\u002F4.security","wpf:key-security",{"title":120,"path":121,"stem":122,"icon":123},"代理","\u002Futils\u002Fproxy","2.utils\u002F5.proxy","arcticons:super-proxy",{"title":125,"path":126,"stem":127,"icon":128},"MCP","\u002Futils\u002Fmcp","2.utils\u002F6.mcp","material-symbols:swap-calls",{"title":130,"path":131,"stem":132,"icon":133},"更多工具","\u002Futils\u002Fmore","2.utils\u002F9.more","mingcute:plus-line",{"title":135,"path":136,"stem":137,"icon":138},"社区","\u002Futils\u002Fcommunity","2.utils\u002F99.community","lets-icons:external",{"title":140,"path":141,"stem":142,"children":143,"icon":145},"示例","\u002Fexamples","4.examples\u002F0.index",[144,146,151,155,159,163,167],{"title":140,"path":141,"stem":142,"icon":145},"ph:code",{"title":147,"path":148,"stem":149,"icon":150},"Cookies","\u002Fexamples\u002Fhandle-cookie","4.examples\u002Fhandle-cookie","ph:arrow-right",{"title":152,"path":153,"stem":154,"icon":150},"HTTP QUERY 方法","\u002Fexamples\u002Fhandle-query","4.examples\u002Fhandle-query",{"title":156,"path":157,"stem":158,"icon":150},"会话","\u002Fexamples\u002Fhandle-session","4.examples\u002Fhandle-session",{"title":160,"path":161,"stem":162,"icon":150},"静态资源","\u002Fexamples\u002Fserve-static-assets","4.examples\u002Fserve-static-assets",{"title":164,"path":165,"stem":166,"icon":150},"流式响应","\u002Fexamples\u002Fstream-response","4.examples\u002Fstream-response",{"title":168,"path":169,"stem":170,"icon":150},"验证数据","\u002Fexamples\u002Fvalidate-data","4.examples\u002Fvalidate-data",{"title":172,"path":173,"stem":174,"children":175,"icon":177},"迁移","\u002Fmigration","5.migration\u002F0.index",[176],{"title":172,"path":173,"stem":174,"icon":177},"icons8:up-round",{"title":179,"path":180,"stem":181,"children":182},"Blog","\u002Fblog","99.blog",[183,187,191],{"title":184,"path":180,"stem":185,"icon":186},"博客","99.blog\u002Findex","i-lucide-file-text",{"title":188,"path":189,"stem":190,"icon":186},"H3 1.8 - 迈向 Web 的边缘","\u002Fblog\u002Fv1.8","99.blog\u002F1.v1.8",{"title":192,"path":193,"stem":194,"icon":186},"H3 v2 测试版","\u002Fblog\u002Fv2-beta","99.blog\u002F2.v2-beta",{"id":196,"title":152,"body":197,"description":850,"extension":851,"meta":852,"navigation":853,"path":153,"seo":854,"stem":154,"__hash__":855},"content\u002F4.examples\u002Fhandle-query.md",{"type":198,"value":199,"toc":840,"icon":150},"minimark",[200,233,246,254,261,384,398,401,427,510,516,537,637,644,659,767,770,787,805,836],[201,202,203,215,216,219,220,224,225,228,229,232],"p",{},[204,205,209,210,214],"a",{"href":206,"rel":207},"https:\u002F\u002Fwww.rfc-editor.org\u002Frfc\u002Frfc10008",[208],"nofollow","HTTP ",[211,212,213],"code",{},"QUERY"," 方法（RFC 10008）","类似于 ",[211,217,218],{},"GET"," —— ",[221,222,223],"strong",{},"安全、幂等且可缓存"," —— 但会在请求 ",[221,226,227],{},"体"," 中通过 ",[211,230,231],{},"Content-Type"," 携带查询内容。它是对“我需要使用 GET，但我的查询内容对于 URL 来说过大或结构过于复杂”这一需求的标准解决方案。",[201,234,235,236,242,243,245],{},"H3 通过 ",[204,237,239],{"href":238},"\u002Fguide\u002Fbasics\u002Frouting#http-query-method",[211,240,241],{},"app.query()"," 将 ",[211,244,213],{}," 作为一等方法提供，并额外提供两个辅助工具。",[247,248,250,251,253],"h2",{"id":249},"注册-query-处理器","注册 ",[211,252,213],{}," 处理器",[201,255,256,257,260],{},"读取请求体的方式与处理 ",[211,258,259],{},"POST"," 一样：",[262,263,268],"pre",{"className":264,"code":265,"language":266,"meta":267,"style":267},"language-ts shiki shiki-themes github-light github-dark github-dark","import { readBody } from \"h3\";\n\napp.query(\"\u002Fbooks\", async (event) => {\n  const query = await readBody(event, { type: \"text\" });\n  return runSearch(query);\n});\n","ts","",[211,269,270,293,300,338,366,378],{"__ignoreMap":267},[271,272,275,279,283,286,290],"span",{"class":273,"line":274},"line",1,[271,276,278],{"class":277},"so5gQ","import",[271,280,282],{"class":281},"slsVL"," { readBody } ",[271,284,285],{"class":277},"from",[271,287,289],{"class":288},"sfrk1"," \"h3\"",[271,291,292],{"class":281},";\n",[271,294,296],{"class":273,"line":295},2,[271,297,299],{"emptyLinePlaceholder":298},true,"\n",[271,301,303,306,310,313,316,319,322,325,329,332,335],{"class":273,"line":302},3,[271,304,305],{"class":281},"app.",[271,307,309],{"class":308},"shcOC","query",[271,311,312],{"class":281},"(",[271,314,315],{"class":288},"\"\u002Fbooks\"",[271,317,318],{"class":281},", ",[271,320,321],{"class":277},"async",[271,323,324],{"class":281}," (",[271,326,328],{"class":327},"sQHwn","event",[271,330,331],{"class":281},") ",[271,333,334],{"class":277},"=>",[271,336,337],{"class":281}," {\n",[271,339,341,344,348,351,354,357,360,363],{"class":273,"line":340},4,[271,342,343],{"class":277},"  const",[271,345,347],{"class":346},"suiK_"," query",[271,349,350],{"class":277}," =",[271,352,353],{"class":277}," await",[271,355,356],{"class":308}," readBody",[271,358,359],{"class":281},"(event, { type: ",[271,361,362],{"class":288},"\"text\"",[271,364,365],{"class":281}," });\n",[271,367,369,372,375],{"class":273,"line":368},5,[271,370,371],{"class":277},"  return",[271,373,374],{"class":308}," runSearch",[271,376,377],{"class":281},"(query);\n",[271,379,381],{"class":273,"line":380},6,[271,382,383],{"class":281},"});\n",[201,385,386,387,389,390,394,395,397],{},"由于 ",[211,388,213],{}," 携带可由攻击者控制的请求体，",[204,391,393],{"href":392},"\u002Futils\u002Frequest#assertbodysizeevent-limit","请求体大小限制","与 ",[211,396,259],{}," 一样适用。",[247,399,400],{"id":400},"广告支持的格式",[201,402,403,404,410,411,414,415,420,421,423,424,426],{},"使用 ",[204,405,407],{"href":406},"\u002Futils\u002Frequest#appendacceptqueryevent-mediatypes",[211,408,409],{},"appendAcceptQuery"," 告知客户端资源理解哪些查询格式。它会设置 ",[211,412,413],{},"Accept-Query"," 响应标头（一个 ",[204,416,419],{"href":417,"rel":418},"https:\u002F\u002Fwww.rfc-editor.org\u002Frfc\u002Frfc8941",[208],"结构化字段"," 列表），也可以在普通的 ",[211,422,218],{}," 请求中设置，以便客户端在发送 ",[211,425,213],{}," 请求之前发现可用格式：",[262,428,430],{"className":264,"code":429,"language":266,"meta":267,"style":267},"import { appendAcceptQuery } from \"h3\";\n\napp.get(\"\u002Fbooks\", (event) => {\n  appendAcceptQuery(event, [\"application\u002Fsql\", \"application\u002Fjsonpath\"]);\n  \u002F\u002F Accept-Query: application\u002Fsql, application\u002Fjsonpath\n  return \"Send a QUERY request with a SQL or JSONPath body.\";\n});\n",[211,431,432,445,449,471,490,496,505],{"__ignoreMap":267},[271,433,434,436,439,441,443],{"class":273,"line":274},[271,435,278],{"class":277},[271,437,438],{"class":281}," { appendAcceptQuery } ",[271,440,285],{"class":277},[271,442,289],{"class":288},[271,444,292],{"class":281},[271,446,447],{"class":273,"line":295},[271,448,299],{"emptyLinePlaceholder":298},[271,450,451,453,456,458,460,463,465,467,469],{"class":273,"line":302},[271,452,305],{"class":281},[271,454,455],{"class":308},"get",[271,457,312],{"class":281},[271,459,315],{"class":288},[271,461,462],{"class":281},", (",[271,464,328],{"class":327},[271,466,331],{"class":281},[271,468,334],{"class":277},[271,470,337],{"class":281},[271,472,473,476,479,482,484,487],{"class":273,"line":340},[271,474,475],{"class":308},"  appendAcceptQuery",[271,477,478],{"class":281},"(event, [",[271,480,481],{"class":288},"\"application\u002Fsql\"",[271,483,318],{"class":281},[271,485,486],{"class":288},"\"application\u002Fjsonpath\"",[271,488,489],{"class":281},"]);\n",[271,491,492],{"class":273,"line":368},[271,493,495],{"class":494},"sCsY4","  \u002F\u002F Accept-Query: application\u002Fsql, application\u002Fjsonpath\n",[271,497,498,500,503],{"class":273,"line":380},[271,499,371],{"class":277},[271,501,502],{"class":288}," \"Send a QUERY request with a SQL or JSONPath body.\"",[271,504,292],{"class":281},[271,506,508],{"class":273,"line":507},7,[271,509,383],{"class":281},[247,511,513,514],{"id":512},"验证-content-type","验证 ",[211,515,231],{},[201,517,403,518,524,525,528,529,532,533,536],{},[204,519,521],{"href":520},"\u002Futils\u002Frequest#requirecontenttypeevent-acceptedtypes",[211,522,523],{},"requireContentType"," 强制执行 RFC 的错误语义。它返回匹配的媒体类型，或抛出 ",[211,526,527],{},"400","（缺失）、",[211,530,531],{},"415","（不支持）或 ",[211,534,535],{},"422","（格式错误）：",[262,538,540],{"className":264,"code":539,"language":266,"meta":267,"style":267},"import { requireContentType, readBody } from \"h3\";\n\napp.query(\"\u002Fbooks\", async (event) => {\n  const type = requireContentType(event, [\"application\u002Fsql\", \"application\u002Fjsonpath\"]);\n  const query = await readBody(event, { type: \"text\" });\n  return runQuery(type, query);\n});\n",[211,541,542,555,559,583,605,623,633],{"__ignoreMap":267},[271,543,544,546,549,551,553],{"class":273,"line":274},[271,545,278],{"class":277},[271,547,548],{"class":281}," { requireContentType, readBody } ",[271,550,285],{"class":277},[271,552,289],{"class":288},[271,554,292],{"class":281},[271,556,557],{"class":273,"line":295},[271,558,299],{"emptyLinePlaceholder":298},[271,560,561,563,565,567,569,571,573,575,577,579,581],{"class":273,"line":302},[271,562,305],{"class":281},[271,564,309],{"class":308},[271,566,312],{"class":281},[271,568,315],{"class":288},[271,570,318],{"class":281},[271,572,321],{"class":277},[271,574,324],{"class":281},[271,576,328],{"class":327},[271,578,331],{"class":281},[271,580,334],{"class":277},[271,582,337],{"class":281},[271,584,585,587,590,592,595,597,599,601,603],{"class":273,"line":340},[271,586,343],{"class":277},[271,588,589],{"class":346}," type",[271,591,350],{"class":277},[271,593,594],{"class":308}," requireContentType",[271,596,478],{"class":281},[271,598,481],{"class":288},[271,600,318],{"class":281},[271,602,486],{"class":288},[271,604,489],{"class":281},[271,606,607,609,611,613,615,617,619,621],{"class":273,"line":368},[271,608,343],{"class":277},[271,610,347],{"class":346},[271,612,350],{"class":277},[271,614,353],{"class":277},[271,616,356],{"class":308},[271,618,359],{"class":281},[271,620,362],{"class":288},[271,622,365],{"class":281},[271,624,625,627,630],{"class":273,"line":380},[271,626,371],{"class":277},[271,628,629],{"class":308}," runQuery",[271,631,632],{"class":281},"(type, query);\n",[271,634,635],{"class":273,"line":507},[271,636,383],{"class":281},[247,638,640,641,643],{"id":639},"提供可缓存的-get-替代方案","提供可缓存的 ",[211,642,218],{}," 替代方案",[201,645,646,648,649,652,653,655,656,658],{},[211,647,213],{}," 响应无法通过 URL 寻址，因此浏览器和 CDN 无法缓存它。RFC 10008 建议通过 ",[211,650,651],{},"Content-Location"," 标头将客户端指向一个等效且可缓存的 ",[211,654,218],{},"。使用稳定的 ID 保存结果，并让客户端通过普通的、可由 HTTP 缓存的 ",[211,657,218],{}," 重复查询：",[262,660,662],{"className":264,"code":661,"language":266,"meta":267,"style":267},"app.query(\"\u002Fbooks\", async (event) => {\n  const result = runQuery(type, query);\n  const id = queryId(type, query); \u002F\u002F 查询的稳定哈希值\n  cache.set(id, result);\n  event.res.headers.set(\"content-location\", `\u002Fbooks\u002F${id}`);\n  return result;\n});\n",[211,663,664,688,701,719,730,756,763],{"__ignoreMap":267},[271,665,666,668,670,672,674,676,678,680,682,684,686],{"class":273,"line":274},[271,667,305],{"class":281},[271,669,309],{"class":308},[271,671,312],{"class":281},[271,673,315],{"class":288},[271,675,318],{"class":281},[271,677,321],{"class":277},[271,679,324],{"class":281},[271,681,328],{"class":327},[271,683,331],{"class":281},[271,685,334],{"class":277},[271,687,337],{"class":281},[271,689,690,692,695,697,699],{"class":273,"line":295},[271,691,343],{"class":277},[271,693,694],{"class":346}," result",[271,696,350],{"class":277},[271,698,629],{"class":308},[271,700,632],{"class":281},[271,702,703,705,708,710,713,716],{"class":273,"line":302},[271,704,343],{"class":277},[271,706,707],{"class":346}," id",[271,709,350],{"class":277},[271,711,712],{"class":308}," queryId",[271,714,715],{"class":281},"(type, query); ",[271,717,718],{"class":494},"\u002F\u002F 查询的稳定哈希值\n",[271,720,721,724,727],{"class":273,"line":340},[271,722,723],{"class":281},"  cache.",[271,725,726],{"class":308},"set",[271,728,729],{"class":281},"(id, result);\n",[271,731,732,735,737,739,742,744,747,750,753],{"class":273,"line":368},[271,733,734],{"class":281},"  event.res.headers.",[271,736,726],{"class":308},[271,738,312],{"class":281},[271,740,741],{"class":288},"\"content-location\"",[271,743,318],{"class":281},[271,745,746],{"class":288},"`\u002Fbooks\u002F${",[271,748,749],{"class":281},"id",[271,751,752],{"class":288},"}`",[271,754,755],{"class":281},");\n",[271,757,758,760],{"class":273,"line":380},[271,759,371],{"class":277},[271,761,762],{"class":281}," result;\n",[271,764,765],{"class":273,"line":507},[271,766,383],{"class":281},[247,768,769],{"id":769},"完整示例",[201,771,772,773,776,777,779,780,782,783,786],{},"一个自包含、可运行的演示——一个 ",[211,774,775],{},"\u002Fbooks"," 资源，接受类似 SQL 和 JSONPath 的查询，验证 ",[211,778,231],{},"，并提供一个可缓存的 ",[211,781,218],{}," 替代方案。同时，它还会在 ",[211,784,785],{},"\u002F"," 提供一个小型交互页面。",[788,789,791],"read-more",{"to":790},"https:\u002F\u002Fgithub.com\u002Fh3js\u002Fh3\u002Ftree\u002Fmain\u002Fexamples\u002Fquery.mjs",[201,792,793,794,800,801,804],{},"查看完整的 ",[204,795,797],{"href":790,"rel":796},[208],[211,798,799],{},"examples\u002Fquery.mjs"," 源代码，或使用 ",[211,802,803],{},"node examples\u002Fquery.mjs"," 在本地运行。",[806,807,808],"note",{},[201,809,810,811,813,814,816,817,820,821,827,828,831,832,835],{},"\n与 ",[211,812,218],{}," 不同，",[211,815,213],{}," ",[221,818,819],{},"不在 CORS 安全列表中","，因此浏览器会发送预检请求。如果你向 ",[204,822,824],{"href":823},"\u002Futils\u002Fsecurity#handlecorsevent-options",[211,825,826],{},"handleCors"," 传入显式的 ",[211,829,830],{},"methods"," 允许列表，请加入 ",[211,833,834],{},"\"QUERY\"","。",[837,838,839],"style",{},"html pre.shiki code .so5gQ, html code.shiki .so5gQ{--shiki-light:#D73A49;--shiki-default:#F97583;--shiki-dark:#F97583}html pre.shiki code .slsVL, html code.shiki .slsVL{--shiki-light:#24292E;--shiki-default:#E1E4E8;--shiki-dark:#E1E4E8}html pre.shiki code .sfrk1, html code.shiki .sfrk1{--shiki-light:#032F62;--shiki-default:#9ECBFF;--shiki-dark:#9ECBFF}html pre.shiki code .shcOC, html code.shiki .shcOC{--shiki-light:#6F42C1;--shiki-default:#B392F0;--shiki-dark:#B392F0}html pre.shiki code .sQHwn, html code.shiki .sQHwn{--shiki-light:#E36209;--shiki-default:#FFAB70;--shiki-dark:#FFAB70}html pre.shiki code .suiK_, html code.shiki .suiK_{--shiki-light:#005CC5;--shiki-default:#79B8FF;--shiki-dark:#79B8FF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":267,"searchDepth":295,"depth":295,"links":841},[842,844,845,847,849],{"id":249,"depth":295,"text":843},"注册 QUERY 处理器",{"id":400,"depth":295,"text":400},{"id":512,"depth":295,"text":846},"验证 Content-Type",{"id":639,"depth":295,"text":848},"提供可缓存的 GET 替代方案",{"id":769,"depth":295,"text":769},"接受在请求体中携带查询内容的安全、可缓存请求。","md",{"icon":150},{"icon":150},{"title":152,"description":850},"fZL68LnviHtPw-nc42KB-ptGg5SEsQvFWvOJiic_sAc",[857,859],{"title":147,"path":148,"stem":149,"description":858,"icon":150,"children":-1},"使用 Cookies 在客户端存储数据。",{"title":156,"path":157,"stem":158,"description":860,"icon":150,"children":-1},"通过会话记住您的用户。",1785471712289]