[{"data":1,"prerenderedAt":1272},["ShallowReactive",2],{"navigation_docs":3,"-guide-cookies-proxy-certificates":172,"-guide-cookies-proxy-certificates-surround":1267},[4,30,100,134],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":29},"Getting started","i-lucide-rocket","\u002Fgetting-started","1.getting-started",[10,14,18,21,25],{"title":11,"path":12,"stem":13},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction",{"title":15,"path":16,"stem":17},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation",{"title":5,"path":19,"stem":20},"\u002Fgetting-started\u002Fquick-start","1.getting-started\u002F3.quick-start",{"title":22,"path":23,"stem":24},"Build from source","\u002Fgetting-started\u002Fbuild-from-source","1.getting-started\u002F4.build-from-source",{"title":26,"path":27,"stem":28},"Troubleshooting","\u002Fgetting-started\u002Ftroubleshooting","1.getting-started\u002F5.troubleshooting",false,{"title":31,"icon":32,"path":33,"stem":34,"children":35,"page":29},"Guide","i-lucide-book-open","\u002Fguide","2.guide",[36,40,44,48,52,56,60,64,68,72,76,80,84,88,92,96],{"title":37,"path":38,"stem":39},"Interface","\u002Fguide\u002Finterface","2.guide\u002F01.interface",{"title":41,"path":42,"stem":43},"Workspace","\u002Fguide\u002Fworkspace","2.guide\u002F02.workspace",{"title":45,"path":46,"stem":47},"Collections","\u002Fguide\u002Fcollections","2.guide\u002F03.collections",{"title":49,"path":50,"stem":51},"HTTP requests","\u002Fguide\u002Fhttp-requests","2.guide\u002F04.http-requests",{"title":53,"path":54,"stem":55},"Variables","\u002Fguide\u002Fvariables","2.guide\u002F05.variables",{"title":57,"path":58,"stem":59},"Authorization","\u002Fguide\u002Fauthorization","2.guide\u002F06.authorization",{"title":61,"path":62,"stem":63},"Scripts and tests","\u002Fguide\u002Fscripts-and-tests","2.guide\u002F07.scripts-and-tests",{"title":65,"path":66,"stem":67},"Collection runner","\u002Fguide\u002Fcollection-runner","2.guide\u002F08.collection-runner",{"title":69,"path":70,"stem":71},"Import and export","\u002Fguide\u002Fimport-export","2.guide\u002F09.import-export",{"title":73,"path":74,"stem":75},"Code snippets","\u002Fguide\u002Fcode-snippets","2.guide\u002F10.code-snippets",{"title":77,"path":78,"stem":79},"gRPC","\u002Fguide\u002Fgrpc","2.guide\u002F11.grpc",{"title":81,"path":82,"stem":83},"WebSocket","\u002Fguide\u002Fwebsocket","2.guide\u002F12.websocket",{"title":85,"path":86,"stem":87},"Cookies, proxy and certificates","\u002Fguide\u002Fcookies-proxy-certificates","2.guide\u002F13.cookies-proxy-certificates",{"title":89,"path":90,"stem":91},"Settings","\u002Fguide\u002Fsettings","2.guide\u002F14.settings",{"title":93,"path":94,"stem":95},"Keyboard shortcuts","\u002Fguide\u002Fkeyboard-shortcuts","2.guide\u002F15.keyboard-shortcuts",{"title":97,"path":98,"stem":99},"Privacy and security","\u002Fguide\u002Fprivacy-and-security","2.guide\u002F16.privacy-and-security",{"title":101,"icon":102,"path":103,"stem":104,"children":105,"page":29},"Reference","i-lucide-square-terminal","\u002Freference","3.reference",[106,110,114,118,122,126,130],{"title":107,"path":108,"stem":109},"Command line","\u002Freference\u002Fcli","3.reference\u002F1.cli",{"title":111,"path":112,"stem":113},"Automation tools","\u002Freference\u002Fautomation-tools","3.reference\u002F2.automation-tools",{"title":115,"path":116,"stem":117},"Scripting API","\u002Freference\u002Fscripting-api","3.reference\u002F3.scripting-api",{"title":119,"path":120,"stem":121},"Dynamic variables","\u002Freference\u002Fdynamic-variables","3.reference\u002F4.dynamic-variables",{"title":123,"path":124,"stem":125},"UI control channel","\u002Freference\u002Fui-control-channel","3.reference\u002F5.ui-control-channel",{"title":127,"path":128,"stem":129},"Workspace format","\u002Freference\u002Fworkspace-format","3.reference\u002F6.workspace-format",{"title":131,"path":132,"stem":133},"Feature status","\u002Freference\u002Ffeature-status","3.reference\u002F7.feature-status",{"title":135,"icon":136,"path":137,"stem":138,"children":139,"page":29},"Contributing","i-lucide-git-pull-request","\u002Fcontributing","4.contributing",[140,144,148,152,156,160,164,168],{"title":141,"path":142,"stem":143},"Contributing overview","\u002Fcontributing\u002Foverview","4.contributing\u002F1.overview",{"title":145,"path":146,"stem":147},"Development","\u002Fcontributing\u002Fdevelopment","4.contributing\u002F2.development",{"title":149,"path":150,"stem":151},"Architecture","\u002Fcontributing\u002Farchitecture","4.contributing\u002F3.architecture",{"title":153,"path":154,"stem":155},"Known gaps","\u002Fcontributing\u002Fgaps","4.contributing\u002F4.gaps",{"title":157,"path":158,"stem":159},"Adding a feature","\u002Fcontributing\u002Fadding-a-feature","4.contributing\u002F5.adding-a-feature",{"title":161,"path":162,"stem":163},"Assets and clean-room","\u002Fcontributing\u002Fassets-and-clean-room","4.contributing\u002F6.assets-and-clean-room",{"title":165,"path":166,"stem":167},"Releasing","\u002Fcontributing\u002Freleasing","4.contributing\u002F7.releasing",{"title":169,"path":170,"stem":171},"Writing the documentation","\u002Fcontributing\u002Fdocumentation","4.contributing\u002F8.documentation",{"id":173,"title":85,"body":174,"description":1260,"extension":1261,"links":1262,"meta":1263,"navigation":1264,"path":86,"seo":1265,"stem":87,"__hash__":1266},"docs\u002F2.guide\u002F13.cookies-proxy-certificates.md",{"type":175,"value":176,"toc":1240},"minimark",[177,181,186,189,296,301,325,331,335,342,376,417,421,445,449,486,490,502,570,573,655,658,715,725,729,735,793,814,817,880,883,954,963,967,974,1011,1017,1023,1027,1030,1044,1054,1057,1061,1083,1102,1106,1109,1142,1145,1167,1177,1181,1221,1224],[178,179,180],"p",{},"This page shows how HTTP requests reach the network and how responses come back. The rules apply to HTTP requests. gRPC and WebSocket reuse parts of the TLS policy and say so on their own pages.",[182,183,185],"h2",{"id":184},"cookies","Cookies",[178,187,188],{},"Postguy keeps one cookie jar per workspace. It follows RFC 6265.",[190,191,192,205],"table",{},[193,194,195],"thead",{},[196,197,198,202],"tr",{},[199,200,201],"th",{},"Behaviour",[199,203,204],{},"Detail",[206,207,208,221,237,253,261,276,284],"tbody",{},[196,209,210,214],{},[211,212,213],"td",{},"Storage",[211,215,216,220],{},[217,218,219],"code",{},".postguy\u002Fcookies.json"," inside the workspace. It survives restarts. It is rewritten after a request that stored a cookie.",[196,222,223,226],{},[211,224,225],{},"Capture",[211,227,228,231,232,236],{},[217,229,230],{},"Set-Cookie"," is stored from ",[233,234,235],"strong",{},"every"," hop of a redirect chain, not only the final response.",[196,238,239,242],{},[211,240,241],{},"Sending",[211,243,244,245,248,249,252],{},"On each hop, jar cookies that match the URL are sent. A ",[217,246,247],{},"Cookie"," header you set yourself is added after them (",[217,250,251],{},"jar cookies; your cookies",").",[196,254,255,258],{},[211,256,257],{},"Limits",[211,259,260],{},"3,000 cookies in total and 180 per domain. At a cap, the oldest cookies are evicted.",[196,262,263,266],{},[211,264,265],{},"Expiry",[211,267,268,271,272,275],{},[217,269,270],{},"Max-Age=0"," and a past ",[217,273,274],{},"Expires"," delete a cookie. Cookies with no expiry are session cookies.",[196,277,278,281],{},[211,279,280],{},"Secure",[211,282,283],{},"Secure cookies need HTTPS both ways.",[196,285,286,289],{},[211,287,288],{},"Host-only",[211,290,291,292,295],{},"A cookie with no ",[217,293,294],{},"Domain"," attribute is not sent to subdomains.",[297,298,300],"h3",{"id":299},"turning-the-jar-off","Turning the jar off",[302,303,304,315],"ul",{},[305,306,307,310,311,314],"li",{},[233,308,309],{},"Globally:"," ",[217,312,313],{},"Settings › General › Disable cookies"," (\"Do not send or store cookies for any request\").",[305,316,317,320,321,324],{},[233,318,319],{},"Per request:"," the request's Settings tab, ",[217,322,323],{},"Disable cookie jar",".",[178,326,327,328,330],{},"Either switch stops sending and storing for that request. Your own ",[217,329,247],{}," header is then sent untouched.",[297,332,334],{"id":333},"the-cookies-manager","The Cookies manager",[178,336,337,338,341],{},"Open it from the bottom bar or with the command ",[217,339,340],{},"Open cookies",". It has:",[302,343,344,359,365],{},[305,345,346,347,350,351,354,355,358],{},"A list of every jar cookie with domain, name, value, path and flags (",[217,348,349],{},"S"," Secure, ",[217,352,353],{},"H"," HttpOnly, ",[217,356,357],{},"T"," has an expiry).",[305,360,361,362,324],{},"Search, a delete button on each row, and ",[217,363,364],{},"Clear all",[305,366,367,368,371,372,375],{},"A ",[217,369,370],{},"Script domain allowlist"," (an ",[217,373,374],{},"Allow"," field and a list with remove buttons). The allowlist is stored in the jar file.",[377,378,379,380,383,384,387,388,391,392,395,396,399,400,403,404,406,407,409,410,413,414,324],"note",{},"Not finished (",[217,381,382],{},"c.cookies-manager"," is ",[217,385,386],{},"partial","). Missing: adding and editing a cookie by hand, and a template list.\nThe allowlist is edited and stored, but the ",[217,389,390],{},"pm.cookies"," lookup does not use it today. ",[217,393,394],{},"pm.cookies.get",", ",[217,397,398],{},"has"," and ",[217,401,402],{},"toObject"," return the response's ",[217,405,230],{}," values plus the cookies the jar would send for the request URL. ",[217,408,390],{}," is read-only. ",[217,411,412],{},"pm.cookies.jar()"," throws ",[217,415,416],{},"not supported yet",[297,418,420],{"id":419},"known-limits","Known limits",[302,422,423,429,435],{},[305,424,425,426,428],{},"There is no public-suffix list. A ",[217,427,294],{}," attribute is refused when it equals the host itself, or when it has no dot and differs from the host.",[305,430,431,434],{},[217,432,433],{},"SameSite"," is stored and shown. It is not enforced beyond the RFC 6265bis defaults.",[305,436,437,438,399,441,444],{},"The ",[217,439,440],{},"__Host-",[217,442,443],{},"__Secure-"," prefixes are not enforced.",[297,446,448],{"id":447},"headless","Headless",[302,450,451,456,465,481],{},[305,452,453],{},[217,454,455],{},"cookies_list",[305,457,458,461,462,464],{},[217,459,460],{},"cookies_set"," (a raw ",[217,463,230],{}," value for a URL)",[305,466,467,470,471,395,474,395,477,480],{},[217,468,469],{},"cookies_delete"," (",[217,472,473],{},"domain",[217,475,476],{},"path",[217,478,479],{},"name",")",[305,482,483],{},[217,484,485],{},"cookies_clear",[182,487,489],{"id":488},"redirects","Redirects",[178,491,492,493,395,496,395,499,252],{},"Postguy follows redirects with its own loop. It records every hop (",[217,494,495],{},"url",[217,497,498],{},"status",[217,500,501],{},"location",[190,503,504,513],{},[193,505,506],{},[196,507,508,511],{},[199,509,510],{},"Status",[199,512,201],{},[206,514,515,533,551,559],{},[196,516,517,520],{},[211,518,519],{},"303",[211,521,522,523,470,526,529,530,532],{},"Becomes ",[217,524,525],{},"GET",[217,527,528],{},"HEAD"," stays ",[217,531,528],{},"). The body and its headers are dropped.",[196,534,535,538],{},[211,536,537],{},"301, 302",[211,539,367,540,543,544,546,547,550],{},[217,541,542],{},"POST"," becomes ",[217,545,525],{}," unless ",[217,548,549],{},"Follow original HTTP method"," is on. Other methods are kept.",[196,552,553,556],{},[211,554,555],{},"307, 308",[211,557,558],{},"Method and body are always kept.",[196,560,561,567],{},[211,562,563,564],{},"3xx without ",[217,565,566],{},"Location",[211,568,569],{},"Final. The response is shown as received.",[178,571,572],{},"Rules that apply on every hop:",[302,574,575,619,629,639,645,648],{},[305,576,577,580,581],{},[233,578,579],{},"Cross-host hop"," (scheme, host or port changed):\n",[302,582,583,592,598,616],{},[305,584,585,587,588,591],{},[217,586,57],{}," is dropped unless ",[217,589,590],{},"Follow Authorization header on cross-host redirects"," is on.",[305,593,594,595,597],{},"The manual ",[217,596,247],{}," header is always dropped.",[305,599,600,601,395,604,395,607,395,610,395,613,324],{},"The body headers are always dropped: ",[217,602,603],{},"Content-Length",[217,605,606],{},"Content-Type",[217,608,609],{},"Content-Encoding",[217,611,612],{},"Content-Language",[217,614,615],{},"Transfer-Encoding",[305,617,618],{},"The jar adds back the cookies that match the new host.",[305,620,621,624,625,628],{},[217,622,623],{},"Remove referer header on redirect"," removes a ",[217,626,627],{},"Referer"," you set.",[305,630,631,632,635,636,324],{},"More than ",[217,633,634],{},"Maximum redirects"," hops fails with ",[217,637,638],{},"stopped after N redirects (maximum N)",[305,640,641,642,324],{},"Seeing the same method and URL twice fails with ",[217,643,644],{},"redirect loop at \u003Curl> (N hops)",[305,646,647],{},"The hop list is kept for the Console.",[305,649,650,651,654],{},"With ",[217,652,653],{},"Automatically follow redirects"," off, the 3xx response is returned as is.",[178,656,657],{},"Per-request settings (Settings tab):",[190,659,660,670],{},[193,661,662],{},[196,663,664,667],{},[199,665,666],{},"Setting",[199,668,669],{},"Default",[206,671,672,681,690,698,706],{},[196,673,674,678],{},[211,675,676],{},[217,677,653],{},[211,679,680],{},"on",[196,682,683,687],{},[211,684,685],{},[217,686,549],{},[211,688,689],{},"off",[196,691,692,696],{},[211,693,694],{},[217,695,590],{},[211,697,689],{},[196,699,700,704],{},[211,701,702],{},[217,703,623],{},[211,705,689],{},[196,707,708,712],{},[211,709,710],{},[217,711,634],{},[211,713,714],{},"10 (range 0 to 100)",[178,716,717,718,720,721,724],{},"The global ",[217,719,653],{}," in ",[722,723,89],"a",{"href":90}," is combined with the request's. Redirects are followed only if both are on.",[182,726,728],{"id":727},"proxy","Proxy",[178,730,731,734],{},[217,732,733],{},"Settings › Proxy"," has two modes.",[190,736,737,746],{},[193,738,739],{},[196,740,741,744],{},[199,742,743],{},"Mode",[199,745,201],{},[206,747,748,785],{},[196,749,750,753],{},[211,751,752],{},"System proxy (default)",[211,754,755,756,395,759,395,762,399,765,768,769,771,772,775,776,778,779,782,783,324],{},"Reads ",[217,757,758],{},"HTTP_PROXY",[217,760,761],{},"HTTPS_PROXY",[217,763,764],{},"ALL_PROXY",[217,766,767],{},"NO_PROXY"," from the environment (lowercase names also work). ",[217,770,761],{}," is used for ",[217,773,774],{},"https:\u002F\u002F"," URLs and ",[217,777,758],{}," for ",[217,780,781],{},"http:\u002F\u002F",". Each falls back to ",[217,784,764],{},[196,786,787,790],{},[211,788,789],{},"Custom proxy",[211,791,792],{},"A proxy you set up. It wins over the environment.",[178,794,795,796,395,799,395,802,805,806,809,810,813],{},"Environment proxy URLs can be ",[217,797,798],{},"http:\u002F\u002Fhost:port",[217,800,801],{},"socks5:\u002F\u002F…",[217,803,804],{},"socks5h:\u002F\u002F…"," or a bare ",[217,807,808],{},"host:port"," (treated as HTTP). The default port is 8080 for HTTP proxies and 1080 for SOCKS. Credentials in the URL (",[217,811,812],{},"user:pass@host",") are used for proxy Basic auth.",[178,815,816],{},"Custom proxy fields:",[190,818,819,829],{},[193,820,821],{},[196,822,823,826],{},[199,824,825],{},"Field",[199,827,828],{},"Notes",[206,830,831,848,856,864,872],{},[196,832,833,836],{},[211,834,835],{},"Protocol",[211,837,838,395,841,844,845],{},[217,839,840],{},"HTTP",[217,842,843],{},"SOCKS5"," or ",[217,846,847],{},"SOCKS5h",[196,849,850,853],{},[211,851,852],{},"Host, Port",[211,854,855],{},"Port defaults to 8080. An empty host means no proxy.",[196,857,858,861],{},[211,859,860],{},"Username, Password",[211,862,863],{},"Optional proxy Basic auth. Never logged.",[196,865,866,869],{},[211,867,868],{},"Apply to HTTP, Apply to HTTPS",[211,870,871],{},"Both on by default",[196,873,874,877],{},[211,875,876],{},"Bypass list",[211,878,879],{},"Comma-separated hosts that skip the proxy",[178,881,882],{},"How routing works:",[302,884,885,901,910,918,941,951],{},[305,886,887,890,891,893,894,896,897,900],{},[233,888,889],{},"HTTP proxy."," Plain ",[217,892,781],{}," requests use absolute-form requests. ",[217,895,774],{}," requests use a ",[217,898,899],{},"CONNECT"," tunnel.",[305,902,903,906,907,324],{},[233,904,905],{},"HTTP\u002F2 limit."," A plain-HTTP request through an HTTP proxy cannot use HTTP\u002F2. Forcing HTTP\u002F2 fails with ",[217,908,909],{},"HTTP\u002F2 cannot go through an HTTP proxy in absolute-form; choose HTTP\u002F1.x or a SOCKS5 proxy",[305,911,912,914,915,917],{},[233,913,843],{}," resolves the target host on your machine. ",[233,916,847],{}," resolves it at the proxy.",[305,919,920,922,923,925,926,929,930,395,932,395,935,938,939,324],{},[233,921,876],{}," (and ",[217,924,767],{},"): ",[217,927,928],{},"*"," disables proxying. An entry matches a host, ",[217,931,808],{},[217,933,934],{},".suffix",[217,936,937],{},"*.suffix"," or a glob with ",[217,940,928],{},[305,942,943,944,399,947,950],{},"Only ",[217,945,946],{},"http",[217,948,949],{},"https"," URLs are proxied.",[305,952,953],{},"The Console logs the effective proxy for each request.",[377,955,956,957,470,959,962],{},"Proxy support is ",[217,958,386],{},[217,960,961],{},"c.proxy","). Missing: discovery of the operating system's proxy settings (environment variables only today) and a per-request off switch. WebSocket connections do not use proxies at all.",[182,964,966],{"id":965},"tls-and-certificates","TLS and certificates",[178,968,969,970,973],{},"HTTPS checks server certificates against the operating system's trust store. ",[217,971,972],{},"Settings › Certificates"," adds to that:",[190,975,976,985],{},[193,977,978],{},[196,979,980,982],{},[199,981,825],{},[199,983,984],{},"Format",[206,986,987,995,1003],{},[196,988,989,992],{},[211,990,991],{},"Custom CA bundle (PEM)",[211,993,994],{},"Added to the system roots for every request. A file with no certificates is an error.",[196,996,997,1000],{},[211,998,999],{},"Certificate chain (PEM)",[211,1001,1002],{},"The client certificate, followed by any intermediates.",[196,1004,1005,1008],{},[211,1006,1007],{},"Private key (PEM)",[211,1009,1010],{},"PKCS#8, PKCS#1 or SEC1.",[178,1012,1013,1014,324],{},"Set the certificate chain and the private key together. Setting only one fails with ",[217,1015,1016],{},"client certificate and key paths must both be set",[178,1018,1019,1020],{},"Not supported: PFX\u002FPKCS#12 files, encrypted private keys, per-host certificates and stored passphrases. The settings screen says ",[217,1021,1022],{},"Encrypted keys and PFX files are not supported yet.",[297,1024,1026],{"id":1025},"turning-verification-off","Turning verification off",[178,1028,1029],{},"Two switches control it:",[302,1031,1032,1038],{},[305,1033,1034,1037],{},[217,1035,1036],{},"Settings › General › SSL certificate verification"," (global).",[305,1039,1040,1041,324],{},"The request's own ",[217,1042,1043],{},"Enable SSL certificate verification",[178,1045,1046,1047,1050,1051],{},"For HTTP, verification is off if ",[233,1048,1049],{},"either"," switch is off. When the global switch is off, its row shows the warning ",[217,1052,1053],{},"Verification is off: responses are encrypted but unauthenticated.",[178,1055,1056],{},"The connection is still encrypted, but the server is not authenticated. Anyone on the path can impersonate it. Add the server's CA to the custom CA bundle instead.",[297,1058,1060],{"id":1059},"other-protocols","Other protocols",[302,1062,1063,1073],{},[305,1064,1065,1068,1069,1072],{},[233,1066,1067],{},"WebSocket:"," uses the request's own ",[217,1070,1071],{},"verifySsl",", the custom CA bundle and the client certificate. It does not use the global switch.",[305,1074,1075,1078,1079,1082],{},[233,1076,1077],{},"gRPC:"," uses the request's ",[217,1080,1081],{},"TLS"," checkbox, the custom CA bundle and the client certificate. There is no verification-off mode.",[178,1084,1085,1088,1089,395,1092,395,1095,1098,1099,1101],{},[217,1086,1087],{},"HTTP version"," (global and per request: ",[217,1090,1091],{},"Auto",[217,1093,1094],{},"HTTP\u002F1.x",[217,1096,1097],{},"HTTP\u002F2",") sets the protocols offered during TLS negotiation. ",[217,1100,1091],{}," offers HTTP\u002F2 and falls back to HTTP\u002F1.1.",[182,1103,1105],{"id":1104},"compression","Compression",[178,1107,1108],{},"Postguy decodes responses automatically.",[302,1110,1111,1128,1135],{},[305,1112,1113,1114,395,1117,1120,1121,1124,1125,324],{},"Encodings: ",[217,1115,1116],{},"gzip",[217,1118,1119],{},"deflate"," (zlib, with a raw-deflate fallback), ",[217,1122,1123],{},"br"," (Brotli) and ",[217,1126,1127],{},"zstd",[305,1129,1130,1131,1134],{},"Chains such as ",[217,1132,1133],{},"Content-Encoding: br, gzip"," are decoded in reverse order.",[305,1136,1137,1138,1141],{},"Postguy sends ",[217,1139,1140],{},"Accept-Encoding: gzip, deflate, br"," unless you set the header yourself.",[178,1143,1144],{},"Two caps protect memory:",[302,1146,1147,1161],{},[305,1148,1149,1152,1153,1156,1157,1160],{},[233,1150,1151],{},"Decoded size:"," 50 MiB by default (the ",[217,1154,1155],{},"Max response size"," setting; ",[217,1158,1159],{},"0"," means unlimited).",[305,1162,1163,1166],{},[233,1164,1165],{},"Ratio:"," decoded size may not exceed 200 times the encoded size plus 64 KiB of headroom.",[178,1168,1169,1170,1172,1173,1176],{},"A response that breaks a cap, such as a compression bomb, fails with an error that names the cap. A body larger than ",[217,1171,1155],{}," fails with ",[217,1174,1175],{},"response body exceeds the N-byte cap",". The response viewer shows the size breakdown (headers, encoded body and decoded body).",[182,1178,1180],{"id":1179},"timeouts-and-cancel","Timeouts and cancel",[302,1182,1183,1202,1205,1208,1218],{},[305,1184,1185,1188,1189,1192,1193,1196,1197,1199,1200,324],{},[217,1186,1187],{},"Request timeout"," has a global value (",[217,1190,1191],{},"Settings › General",") and a per-request value (",[217,1194,1195],{},"Request timeout (ms, 0 = none)","). ",[217,1198,1159],{}," means no timeout. The request's value wins when it is not ",[217,1201,1159],{},[305,1203,1204],{},"Connecting has its own limit of 30 seconds for each stage (TCP connect, proxy handshake, TLS handshake).",[305,1206,1207],{},"A timeout or a cancel names the phase it stopped in. Any partial bytes are discarded.",[305,1209,1210,1211,1214,1215,252],{},"Cancel a running request with ",[217,1212,1213],{},"Esc"," (command ",[217,1216,1217],{},"Cancel request",[305,1219,1220],{},"Timings shown with a response: connect (DNS, TCP and TLS combined), wait (time to first byte), download and total.",[182,1222,448],{"id":1223},"headless-1",[178,1225,1226,1229,1230,1233,1234,1237,1238,324],{},[217,1227,1228],{},"request_send"," sends a saved request with the workspace settings. ",[217,1231,1232],{},"request_cancel"," cancels it. ",[217,1235,1236],{},"cookies_*"," manage the jar. See ",[722,1239,111],{"href":112},{"title":1241,"searchDepth":1242,"depth":1242,"links":1243},"",2,[1244,1251,1252,1253,1257,1258,1259],{"id":184,"depth":1242,"text":185,"children":1245},[1246,1248,1249,1250],{"id":299,"depth":1247,"text":300},3,{"id":333,"depth":1247,"text":334},{"id":419,"depth":1247,"text":420},{"id":447,"depth":1247,"text":448},{"id":488,"depth":1242,"text":489},{"id":727,"depth":1242,"text":728},{"id":965,"depth":1242,"text":966,"children":1254},[1255,1256],{"id":1025,"depth":1247,"text":1026},{"id":1059,"depth":1247,"text":1060},{"id":1104,"depth":1242,"text":1105},{"id":1179,"depth":1242,"text":1180},{"id":1223,"depth":1242,"text":448},"Cookie jar, redirects, proxy, TLS and client certificates, compression, timeouts and cancel.","md",null,{},true,{"title":85,"description":1260},"0P15eI674g1OpCGvcSpjEjs-m88aFjdXct7weT1377I",[1268,1270],{"title":81,"path":82,"stem":83,"description":1269,"children":-1},"Connect to ws:\u002F\u002F and wss:\u002F\u002F endpoints, send text messages and read the event log. The full composer is available through tools.",{"title":89,"path":90,"stem":91,"description":1271,"children":-1},"The Settings screens, every settings.json key with its default, and what happens to a corrupt settings file.",1793179614018]