{"id":118285,"date":"2025-08-14T15:35:30","date_gmt":"2025-08-14T08:35:30","guid":{"rendered":"https:\/\/tino.vn\/blog\/?p=118285"},"modified":"2026-10-22T16:34:35","modified_gmt":"2026-10-22T09:34:35","slug":"khac-phuc-loi-401-unauthorized-authorization-failed","status":"publish","type":"post","link":"https:\/\/tino.vn\/blog\/khac-phuc-loi-401-unauthorized-authorization-failed\/","title":{"rendered":"L\u1ed7i 401 Unauthorized l\u00e0 g\u00ec? Nguy\u00ean nh\u00e2n v\u00e0 c\u00e1ch kh\u1eafc ph\u1ee5c"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>L\u1ed7i 401 Unauthorized<\/strong> l\u00e0 m\u00e3 tr\u1ea1ng th\u00e1i HTTP cho bi\u1ebft m\u00e1y ch\u1ee7 t\u1eeb ch\u1ed1i y\u00eau c\u1ea7u v\u00ec thi\u1ebfu ho\u1eb7c sai th\u00f4ng tin x\u00e1c th\u1ef1c, nh\u01b0 m\u1eadt kh\u1ea9u, API key hay token \u0111\u00e3 h\u1ebft h\u1ea1n. Kh\u00e1c v\u1edbi 403 Forbidden (\u0111\u00e3 x\u00e1c th\u1ef1c nh\u01b0ng kh\u00f4ng c\u00f3 quy\u1ec1n), l\u1ed7i 401 th\u01b0\u1eddng h\u1ebft khi b\u1ea1n \u0111\u0103ng nh\u1eadp l\u1ea1i, g\u1eedi \u0111\u00fang header ho\u1eb7c l\u00e0m m\u1edbi token.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">B\u00e0i n\u00e0y \u0111i t\u1eeb \u0111\u1ecbnh ngh\u0129a, c\u00e1ch ph\u00e2n bi\u1ec7t 401 v\u1edbi 403, c\u00e1c nguy\u00ean nh\u00e2n hay g\u1eb7p, r\u1ed3i t\u1edbi c\u00e1ch s\u1eeda tr\u00ean website, khi g\u1ecdi API v\u00e0 c\u1ee5 th\u1ec3 trong node HTTP Request c\u1ee7a <a href=\"https:\/\/tino.vn\/blog\/n8n-la-gi\/\">n8n<\/a>. Th\u00f4ng tin \u0111\u1ed1i chi\u1ebfu v\u1edbi RFC 9110, MDN v\u00e0 t\u00e0i li\u1ec7u docs.n8n.io ng\u00e0y 22\/10\/2026.<\/p>\n\n\n\n<h2 id=\"L\u1ed7i_401_Unauthorized_l\u00e0_g\u00ec?\">L\u1ed7i 401 Unauthorized l\u00e0 g\u00ec?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L\u1ed7i 401 Unauthorized l\u00e0 ph\u1ea3n h\u1ed3i HTTP ngh\u0129a l\u00e0 y\u00eau c\u1ea7u ch\u01b0a \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n v\u00ec thi\u1ebfu th\u00f4ng tin x\u00e1c th\u1ef1c h\u1ee3p l\u1ec7 cho t\u00e0i nguy\u00ean \u0111\u00f3. Theo <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc9110#name-401-unauthorized\" target=\"_blank\" rel=\"noopener nofollow\">RFC 9110 m\u1ee5c 15.5.2<\/a>, m\u00e1y ch\u1ee7 tr\u1ea3 401 ph\u1ea3i k\u00e8m header <code>WWW-Authenticate<\/code> n\u00eau t\u1ed1i thi\u1ec3u m\u1ed9t ki\u1ec3u x\u00e1c th\u1ef1c \u00e1p d\u1ee5ng \u0111\u01b0\u1ee3c, v\u00ed d\u1ee5 <code>Basic<\/code> ho\u1eb7c <code>Bearer<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">T\u00ean &#8220;Unauthorized&#8221; d\u1ec5 g\u00e2y hi\u1ec3u nh\u1ea7m. M\u00e3 401 n\u00f3i v\u1ec1 <strong>x\u00e1c th\u1ef1c<\/strong> (m\u00e1y ch\u1ee7 ch\u01b0a bi\u1ebft b\u1ea1n l\u00e0 ai), kh\u00f4ng ph\u1ea3i <strong>ph\u00e2n quy\u1ec1n<\/strong>. <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/HTTP\/Reference\/Status\/401\" target=\"_blank\" rel=\"noopener nofollow\">MDN<\/a> t\u00f3m t\u1eaft: 401 l\u00e0 request thi\u1ebfu th\u00f4ng tin \u0111\u0103ng nh\u1eadp h\u1ee3p l\u1ec7, c\u00f2n 403 l\u00e0 th\u00f4ng tin \u0111\u0103ng nh\u1eadp h\u1ee3p l\u1ec7 nh\u01b0ng kh\u00f4ng \u0111\u1ee7 quy\u1ec1n.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">B\u1ea1n th\u01b0\u1eddng g\u1eb7p l\u1ed7i 401 \u1edf ba d\u1ea1ng:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tr\u00ecnh duy\u1ec7t hi\u1ec7n h\u1ed9p \u0111\u0103ng nh\u1eadp ho\u1eb7c trang &#8220;401 Unauthorized&#8221; khi m\u1edf m\u1ed9t th\u01b0 m\u1ee5c hay trang qu\u1ea3n tr\u1ecb c\u00f3 b\u1ea3o v\u1ec7.<\/li>\n\n\n<li>\u1ee8ng d\u1ee5ng, script ho\u1eb7c Postman nh\u1eadn <code>HTTP\/1.1 401 Unauthorized<\/code> khi g\u1ecdi API v\u1edbi key sai, thi\u1ebfu ho\u1eb7c h\u1ebft h\u1ea1n.<\/li>\n\n\n<li>Trong n8n, node HTTP Request b\u00e1o &#8220;Authorization failed &#8211; please check your credentials&#8221; k\u00e8m Error code 401.<\/li>\n<\/ul>\n\n\n\n<h2 id=\"L\u1ed7i_401_v\u00e0_403_kh\u00e1c_nhau_th\u1ebf_n\u00e0o?\">L\u1ed7i 401 v\u00e0 403 kh\u00e1c nhau th\u1ebf n\u00e0o?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L\u1ed7i 401 x\u1ea3y ra \u1edf b\u01b0\u1edbc x\u00e1c th\u1ef1c: m\u00e1y ch\u1ee7 ch\u01b0a x\u00e1c nh\u1eadn \u0111\u01b0\u1ee3c danh t\u00ednh c\u1ee7a b\u1ea1n. L\u1ed7i 403 x\u1ea3y ra \u1edf b\u01b0\u1edbc ph\u00e2n quy\u1ec1n: m\u00e1y ch\u1ee7 \u0111\u00e3 hi\u1ec3u y\u00eau c\u1ea7u, c\u00f3 th\u1ec3 \u0111\u00e3 bi\u1ebft b\u1ea1n l\u00e0 ai, nh\u01b0ng t\u1eeb ch\u1ed1i th\u1ef1c hi\u1ec7n. Theo <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc9110#name-403-forbidden\" target=\"_blank\" rel=\"noopener nofollow\">RFC 9110 m\u1ee5c 15.5.4<\/a>, g\u1eedi l\u1ea1i 403 v\u1edbi c\u00f9ng th\u00f4ng tin \u0111\u0103ng nh\u1eadp s\u1ebd kh\u00f4ng c\u00f3 t\u00e1c d\u1ee5ng.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1400\" height=\"750\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-401-va-403.webp\" alt=\"S\u01a1 \u0111\u1ed3 so s\u00e1nh l\u1ed7i 401 v\u00e0 403: request \u0111i qua b\u01b0\u1edbc x\u00e1c th\u1ef1c (thi\u1ebfu ho\u1eb7c sai th\u00f4ng tin tr\u1ea3 401 k\u00e8m WWW-Authenticate) r\u1ed3i b\u01b0\u1edbc ph\u00e2n quy\u1ec1n (kh\u00f4ng \u0111\u1ee7 quy\u1ec1n tr\u1ea3 403), qua c\u1ea3 hai th\u00ec tr\u1ea3 200 OK; 407 l\u00e0 401 c\u1ee7a proxy, 404 c\u00f3 th\u1ec3 d\u00f9ng \u0111\u1ec3 gi\u1ea5u t\u00e0i nguy\u00ean\" class=\"wp-image-131497\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-401-va-403.webp 1400w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-401-va-403-300x161.webp 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-401-va-403-1024x549.webp 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-401-va-403-768x411.webp 768w\" sizes=\"(max-width: 1400px) 100vw, 1400px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>M\u00e3<\/th><th>\u00dd ngh\u0129a<\/th><th>V\u00ed d\u1ee5 th\u01b0\u1eddng g\u1eb7p<\/th><th>C\u00e1ch x\u1eed l\u00fd<\/th><\/tr><\/thead><tbody><tr><td><strong>401 Unauthorized<\/strong><\/td><td>Thi\u1ebfu ho\u1eb7c sai th\u00f4ng tin x\u00e1c th\u1ef1c<\/td><td>API key sai, token h\u1ebft h\u1ea1n, qu\u00ean header Authorization<\/td><td>\u0110\u0103ng nh\u1eadp l\u1ea1i, g\u1eedi \u0111\u00fang key\/token, l\u00e0m m\u1edbi token<\/td><\/tr><tr><td><strong>403 Forbidden<\/strong><\/td><td>\u0110\u00e3 hi\u1ec3u y\u00eau c\u1ea7u nh\u01b0ng t\u1eeb ch\u1ed1i<\/td><td>Token thi\u1ebfu scope, t\u00e0i kho\u1ea3n kh\u00f4ng c\u00f3 vai tr\u00f2 qu\u1ea3n tr\u1ecb, IP b\u1ecb ch\u1eb7n<\/td><td>C\u1ea5p th\u00eam quy\u1ec1n, d\u00f9ng t\u00e0i kho\u1ea3n kh\u00e1c, m\u1edf IP<\/td><\/tr><tr><td><strong>404 Not Found<\/strong><\/td><td>Kh\u00f4ng t\u00ecm th\u1ea5y t\u00e0i nguy\u00ean<\/td><td>Sai URL, sai ID; m\u1ed9t s\u1ed1 m\u00e1y ch\u1ee7 tr\u1ea3 404 thay cho 403 \u0111\u1ec3 gi\u1ea5u t\u00e0i nguy\u00ean<\/td><td>Ki\u1ec3m tra URL v\u00e0 t\u00e0i li\u1ec7u API<\/td><\/tr><tr><td><strong>407 Proxy Authentication Required<\/strong><\/td><td>Gi\u1ed1ng 401 nh\u01b0ng \u1edf proxy<\/td><td>M\u1ea1ng c\u00f4ng ty b\u1eaft \u0111\u0103ng nh\u1eadp proxy<\/td><td>Khai b\u00e1o th\u00f4ng tin \u0111\u0103ng nh\u1eadp proxy<\/td><\/tr><tr><td><strong>429 Too Many Requests<\/strong><\/td><td>G\u1eedi qu\u00e1 nhi\u1ec1u request<\/td><td>V\u01b0\u1ee3t gi\u1edbi h\u1ea1n t\u1ed1c \u0111\u1ed9 c\u1ee7a API<\/td><td>Gi\u00e3n nh\u1ecbp g\u1eedi, ch\u1edd r\u1ed3i th\u1eed l\u1ea1i<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Ph\u00e2n bi\u1ec7t 401 v\u1edbi c\u00e1c m\u00e3 l\u1ed7i d\u1ec5 nh\u1ea7m (theo RFC 9110 v\u00e0 RFC 6585, truy c\u1eadp 22\/10\/2026)<\/figcaption><\/figure>\n\n\n\n<h2 id=\"Nguy\u00ean_nh\u00e2n_g\u00e2y_l\u1ed7i_401\">Nguy\u00ean nh\u00e2n g\u00e2y l\u1ed7i 401<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L\u1ed7i 401 g\u1ea7n nh\u01b0 lu\u00f4n do th\u00f4ng tin x\u00e1c th\u1ef1c: thi\u1ebfu, sai, h\u1ebft h\u1ea1n, ho\u1eb7c g\u1eedi sai ch\u1ed7. M\u00e1y ch\u1ee7 v\u1eabn ch\u1ea1y b\u00ecnh th\u01b0\u1eddng, n\u00f3 ch\u1ec9 kh\u00f4ng ch\u1ea5p nh\u1eadn danh t\u00ednh g\u1eedi k\u00e8m request. B\u1ea3ng d\u01b0\u1edbi gom nguy\u00ean nh\u00e2n theo b\u1ed1i c\u1ea3nh (website, WordPress REST API, API key, OAuth2, proxy) \u0111\u1ec3 b\u1ea1n khoanh v\u00f9ng nhanh.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>B\u1ed1i c\u1ea3nh<\/th><th>Nguy\u00ean nh\u00e2n hay g\u1eb7p<\/th><th>D\u1ea5u hi\u1ec7u<\/th><\/tr><\/thead><tbody><tr><td>Website, trang qu\u1ea3n tr\u1ecb<\/td><td>Sai t\u00ean \u0111\u0103ng nh\u1eadp ho\u1eb7c m\u1eadt kh\u1ea9u; phi\u00ean \u0111\u0103ng nh\u1eadp h\u1ebft h\u1ea1n; th\u01b0 m\u1ee5c \u0111\u01b0\u1ee3c b\u1ea3o v\u1ec7 b\u1eb1ng Basic Auth (.htpasswd)<\/td><td>Tr\u00ecnh duy\u1ec7t hi\u1ec7n h\u1ed9p \u0111\u0103ng nh\u1eadp ho\u1eb7c trang 401<\/td><\/tr><tr><td>WordPress REST API<\/td><td>G\u1ecdi endpoint c\u1ea7n \u0111\u0103ng nh\u1eadp m\u00e0 kh\u00f4ng g\u1eedi Application Password ho\u1eb7c cookie h\u1ee3p l\u1ec7<\/td><td>JSON l\u1ed7i k\u00e8m m\u00e3 401<\/td><\/tr><tr><td>API d\u00f9ng API key<\/td><td>Key sai, b\u1ecb thu h\u1ed3i, ch\u01b0a k\u00edch ho\u1ea1t, d\u00f9ng key m\u00f4i tr\u01b0\u1eddng th\u1eed cho m\u00f4i tr\u01b0\u1eddng th\u1eadt<\/td><td>Th\u00f4ng b\u00e1o ki\u1ec3u &#8220;Invalid API key&#8221;<\/td><\/tr><tr><td>API d\u00f9ng OAuth2 ho\u1eb7c JWT<\/td><td>Access token h\u1ebft h\u1ea1n, refresh token b\u1ecb thu h\u1ed3i, \u0111\u1ed5i m\u1eadt kh\u1ea9u t\u00e0i kho\u1ea3n<\/td><td>Th\u00f4ng b\u00e1o &#8220;token expired&#8221;, &#8220;invalid_token&#8221;<\/td><\/tr><tr><td>Sai ki\u1ec3u ho\u1eb7c v\u1ecb tr\u00ed x\u00e1c th\u1ef1c<\/td><td>API c\u1ea7n Bearer nh\u01b0ng g\u1eedi Basic; key ph\u1ea3i \u1edf header nh\u01b0ng l\u1ea1i \u0111\u1ec3 trong URL (ho\u1eb7c ng\u01b0\u1ee3c l\u1ea1i); thi\u1ebfu ch\u1eef &#8220;Bearer &#8220;<\/td><td>Header WWW-Authenticate n\u00eau ki\u1ec3u kh\u00e1c v\u1edbi ki\u1ec3u b\u1ea1n g\u1eedi<\/td><\/tr><tr><td>Proxy, c\u1ed5ng API<\/td><td>Gateway ho\u1eb7c reverse proxy ph\u00eda tr\u01b0\u1edbc y\u00eau c\u1ea7u x\u00e1c th\u1ef1c ri\u00eang<\/td><td>L\u1ed7i \u0111\u1ebfn t\u1eeb t\u00ean mi\u1ec1n gateway, kh\u00f4ng ph\u1ea3i d\u1ecbch v\u1ee5 g\u1ed1c<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 id=\"Nh\u1eefng_l\u1ed7i_hay_b\u1ecb_nh\u1ea7m_l\u00e0_401\">Nh\u1eefng l\u1ed7i hay b\u1ecb nh\u1ea7m l\u00e0 401<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">M\u1ed9t s\u1ed1 t\u00ecnh hu\u1ed1ng kh\u00f4ng tr\u1ea3 401 d\u00f9 li\u00ean quan \u0111\u1ebfn x\u00e1c th\u1ef1c. Theo <a href=\"https:\/\/docs.n8n.io\/integrations\/builtin\/core-nodes\/n8n-nodes-base.httprequest\/common-issues\/\" target=\"_blank\" rel=\"noopener nofollow\">t\u00e0i li\u1ec7u node HTTP Request c\u1ee7a n8n<\/a>, g\u1eedi qu\u00e1 nhi\u1ec1u request l\u00e0 l\u1ed7i 429; body ho\u1eb7c tham s\u1ed1 sai \u0111\u1ecbnh d\u1ea1ng th\u01b0\u1eddng l\u00e0 400 ho\u1eb7c 415; \u0111\u1ee7 x\u00e1c th\u1ef1c nh\u01b0ng token thi\u1ebfu quy\u1ec1n (scope) th\u01b0\u1eddng l\u00e0 403. G\u1eb7p 429 th\u00ec gi\u00e3n nh\u1ecbp g\u1eedi request, kh\u00f4ng c\u1ea7n \u0111\u1ed5i key.<\/p>\n\n\n\n<h2 id=\"C\u00e1ch_s\u1eeda_l\u1ed7i_401_khi_truy_c\u1eadp_website\">C\u00e1ch s\u1eeda l\u1ed7i 401 khi truy c\u1eadp website<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">V\u1edbi ng\u01b0\u1eddi d\u00f9ng website, l\u1ed7i 401 th\u01b0\u1eddng do phi\u00ean \u0111\u0103ng nh\u1eadp \u0111\u00e3 h\u1ebft ho\u1eb7c tr\u00ecnh duy\u1ec7t \u0111ang nh\u1edb th\u00f4ng tin \u0111\u0103ng nh\u1eadp c\u0169. Ph\u1ea7n l\u1edbn tr\u01b0\u1eddng h\u1ee3p ch\u1ec9 c\u1ea7n \u0111\u0103ng nh\u1eadp l\u1ea1i ho\u1eb7c x\u00f3a cookie c\u1ee7a trang. Th\u1eed l\u1ea7n l\u01b0\u1ee3t c\u00e1c b\u01b0\u1edbc sau, t\u1eeb nhanh \u0111\u1ebfn l\u00e2u:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Ki\u1ec3m tra l\u1ea1i URL: g\u00f5 sai \u0111\u01b0\u1eddng d\u1eabn c\u00f3 th\u1ec3 \u0111\u01b0a b\u1ea1n v\u00e0o th\u01b0 m\u1ee5c c\u1ea7n \u0111\u0103ng nh\u1eadp.<\/li>\n\n\n<li>\u0110\u0103ng xu\u1ea5t r\u1ed3i \u0111\u0103ng nh\u1eadp l\u1ea1i; n\u1ebfu v\u1eabn l\u1ed7i, x\u00f3a cookie v\u00e0 cache c\u1ee7a ri\u00eang trang \u0111\u00f3 ho\u1eb7c m\u1edf c\u1eeda s\u1ed5 \u1ea9n danh.<\/li>\n\n\n<li>V\u1edbi th\u01b0 m\u1ee5c b\u1ea3o v\u1ec7 b\u1eb1ng m\u1eadt kh\u1ea9u (Basic Auth), h\u1ecfi qu\u1ea3n tr\u1ecb vi\u00ean t\u00e0i kho\u1ea3n \u0111\u00fang; tr\u00ecnh duy\u1ec7t c\u00f3 th\u1ec3 \u0111ang nh\u1edb m\u1eadt kh\u1ea9u c\u0169.<\/li>\n\n\n<li>V\u1edbi qu\u1ea3n tr\u1ecb vi\u00ean: ki\u1ec3m tra plugin b\u1ea3o m\u1eadt, t\u01b0\u1eddng l\u1eeda \u1ee9ng d\u1ee5ng ho\u1eb7c c\u1ea5u h\u00ecnh .htaccess\/.htpasswd v\u1eeba thay \u0111\u1ed5i.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">L\u1ed7i 401 tr\u00ean trang c\u00f4ng khai c\u0169ng ch\u1eb7n Googlebot. Trang tr\u1ea3 401 s\u1ebd kh\u00f4ng \u0111\u01b0\u1ee3c l\u1eadp ch\u1ec9 m\u1ee5c, n\u00ean ch\u1ec9 \u0111\u1eb7t m\u1eadt kh\u1ea9u cho khu v\u1ef1c th\u1eadt s\u1ef1 c\u1ea7n b\u1ea3o v\u1ec7.<\/p>\n\n\n\n<h2 id=\"C\u00e1ch_s\u1eeda_l\u1ed7i_401_khi_g\u1ecdi_API\">C\u00e1ch s\u1eeda l\u1ed7i 401 khi g\u1ecdi API<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Khi g\u1ecdi API, c\u00e1ch s\u1eeda l\u1ed7i 401 l\u00e0 so request c\u1ee7a b\u1ea1n v\u1edbi t\u00e0i li\u1ec7u API: \u0111\u00fang ki\u1ec3u x\u00e1c th\u1ef1c, \u0111\u00fang v\u1ecb tr\u00ed \u0111\u1eb7t key, key c\u00f2n hi\u1ec7u l\u1ef1c. Quy tr\u00ecnh 4 b\u01b0\u1edbc d\u01b0\u1edbi \u0111\u00e2y gi\u00fap t\u00e1ch l\u1ed7i do th\u00f4ng tin \u0111\u0103ng nh\u1eadp v\u1edbi l\u1ed7i do c\u00e1ch g\u1eedi.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1400\" height=\"750\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-quy-trinh-kiem-tra.webp\" alt=\"Quy tr\u00ecnh 4 b\u01b0\u1edbc s\u1eeda l\u1ed7i 401: \u0111\u1ecdc header WWW-Authenticate v\u00e0 n\u1ed9i dung l\u1ed7i, ki\u1ec3m tra key ho\u1eb7c token c\u00f2n hi\u1ec7u l\u1ef1c, g\u1eedi \u0111\u00fang v\u1ecb tr\u00ed v\u00e0 \u0111\u1ecbnh d\u1ea1ng (Authorization Bearer, query appid, X-API-Key), th\u1eed b\u1eb1ng curl ho\u1eb7c Postman r\u1ed3i t\u1ea1o credential trong n8n\" class=\"wp-image-131500\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-quy-trinh-kiem-tra.webp 1400w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-quy-trinh-kiem-tra-300x161.webp 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-quy-trinh-kiem-tra-1024x549.webp 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-quy-trinh-kiem-tra-768x411.webp 768w\" sizes=\"(max-width: 1400px) 100vw, 1400px\" \/><\/figure>\n\n\n\n<h3 id=\"Ki\u1ec3m_tra_API_key_b\u1eb1ng_curl_ho\u1eb7c_Postman\">Ki\u1ec3m tra API key b\u1eb1ng curl ho\u1eb7c Postman<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">G\u1ecdi th\u1eed ngo\u00e0i n8n gi\u00fap bi\u1ebft l\u1ed7i n\u1eb1m \u1edf key hay \u1edf c\u1ea5u h\u00ecnh node. L\u1ec7nh <code>-i<\/code> in c\u1ea3 m\u00e3 tr\u1ea1ng th\u00e1i v\u00e0 header, trong \u0111\u00f3 c\u00f3 <code>WWW-Authenticate<\/code> n\u1ebfu m\u00e1y ch\u1ee7 g\u1eedi:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># API nh\u1eadn key qua header Bearer\ncurl -i https:\/\/api.example.com\/v1\/me -H \"Authorization: Bearer &lt;TOKEN&gt;\"\n\n# API nh\u1eadn key qua tham s\u1ed1 URL (v\u00ed d\u1ee5 OpenWeatherMap d\u00f9ng appid)\ncurl -i \"https:\/\/api.openweathermap.org\/data\/2.5\/weather?q=Hanoi&amp;appid=&lt;API_KEY&gt;\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">N\u1ebfu curl tr\u1ea3 200 m\u00e0 n8n v\u1eabn 401, l\u1ed7i n\u1eb1m \u1edf c\u00e1ch c\u1ea5u h\u00ecnh node. N\u1ebfu curl c\u0169ng 401, ki\u1ec3m tra l\u1ea1i key tr\u00ean trang qu\u1ea3n l\u00fd c\u1ee7a nh\u00e0 cung c\u1ea5p: key c\u00f3 \u0111\u00fang t\u00e0i kho\u1ea3n, \u0111\u00e3 k\u00edch ho\u1ea1t, ch\u01b0a b\u1ecb thu h\u1ed3i. Kh\u00f4ng d\u00e1n key th\u1eadt v\u00e0o \u1ea3nh ch\u1ee5p, ticket h\u1ed7 tr\u1ee3 hay nh\u00f3m chat.<\/p>\n\n\n\n<h2 id=\"C\u00e1ch_s\u1eeda_l\u1ed7i_401_khi_g\u1ecdi_API_trong_n8n\">C\u00e1ch s\u1eeda l\u1ed7i 401 khi g\u1ecdi API trong n8n<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Trong n8n, l\u1ed7i 401 hi\u1ec7n \u1edf node HTTP Request v\u1edbi th\u00f4ng b\u00e1o &#8220;Authorization failed &#8211; please check your credentials&#8221;. C\u00e1ch s\u1eeda b\u1ec1n l\u00e0 \u0111\u01b0a th\u00f4ng tin x\u00e1c th\u1ef1c v\u00e0o <strong>credential<\/strong> thay v\u00ec d\u00e1n v\u00e0o URL hay header th\u1ee7 c\u00f4ng. Ph\u1ea7n n\u00e0y d\u00f9ng v\u00ed d\u1ee5 OpenWeatherMap; c\u00e1ch l\u00e0m gi\u1ed1ng h\u1ec7t v\u1edbi API kh\u00e1c. N\u1ebfu b\u1ea1n m\u1edbi l\u00e0m quen node n\u00e0y, \u0111\u1ecdc tr\u01b0\u1edbc <a href=\"https:\/\/tino.vn\/blog\/cach-them-api-vao-n8n\/\">c\u00e1ch th\u00eam API v\u00e0o n8n b\u1eb1ng node HTTP Request<\/a>.<\/p>\n\n\n\n<h3 id=\"D\u1ef1ng_l\u1ea1i_l\u1ed7i_401_v\u1edbi_OpenWeatherMap\">D\u1ef1ng l\u1ea1i l\u1ed7i 401 v\u1edbi OpenWeatherMap<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">B\u01b0\u1edbc 1: \u0110\u0103ng k\u00fd t\u00e0i kho\u1ea3n mi\u1ec5n ph\u00ed t\u1ea1i <a href=\"https:\/\/openweathermap.org\/api\" target=\"_blank\" rel=\"noopener nofollow\">openweathermap.org\/api<\/a> v\u00e0 l\u1ea5y API key \u1edf m\u1ee5c API keys. Key m\u1edbi c\u00f3 th\u1ec3 c\u1ea7n m\u1ed9t kho\u1ea3ng th\u1eddi gian m\u1edbi ho\u1ea1t \u0111\u1ed9ng.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1285\" height=\"509\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-openweathermap-api-key-da-che.webp\" alt=\"Trang API keys c\u1ee7a OpenWeatherMap v\u1edbi key m\u1eb7c \u0111\u1ecbnh \u0111\u00e3 \u0111\u01b0\u1ee3c che, tr\u1ea1ng th\u00e1i \u0111ang b\u1eadt v\u00e0 \u00f4 t\u1ea1o key m\u1edbi\" class=\"wp-image-131499\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-openweathermap-api-key-da-che.webp 1285w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-openweathermap-api-key-da-che-300x119.webp 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-openweathermap-api-key-da-che-1024x406.webp 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-openweathermap-api-key-da-che-768x304.webp 768w\" sizes=\"(max-width: 1285px) 100vw, 1285px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">B\u01b0\u1edbc 2: T\u1ea1o workflow m\u1edbi, th\u00eam Manual Trigger (&#8220;When clicking &#8216;Execute workflow'&#8221;) r\u1ed3i n\u1ed1i v\u1edbi m\u1ed9t node HTTP Request.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1214\" height=\"641\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/08\/word-image-118285-2.png\" alt=\"Workflow m\u1eabu trong n8n g\u1ed3m Manual Trigger n\u1ed1i v\u1edbi node HTTP Request g\u1ecdi API OpenWeatherMap\" class=\"wp-image-118287\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/08\/word-image-118285-2.png 1214w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/08\/word-image-118285-2-300x158.png 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/08\/word-image-118285-2-1024x541.png 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/08\/word-image-118285-2-768x406.png 768w\" sizes=\"(max-width: 1214px) 100vw, 1214px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">B\u01b0\u1edbc 3: C\u1ea5u h\u00ecnh node HTTP Request v\u1edbi Method <code>GET<\/code> v\u00e0 URL <code>https:\/\/api.openweathermap.org\/data\/2.5\/weather?q=Hanoi<\/code>, ch\u01b0a g\u1eedi key. B\u1ea5m Execute step: node b\u00e1o 401 v\u00ec request kh\u00f4ng c\u00f3 th\u00f4ng tin x\u00e1c th\u1ef1c.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1488\" height=\"884\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/08\/word-image-118285-3.png\" alt=\"Node HTTP Request trong n8n b\u00e1o l\u1ed7i 401 Authorization failed - please check your credentials khi g\u1ecdi OpenWeatherMap kh\u00f4ng k\u00e8m API key\" class=\"wp-image-118288\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/08\/word-image-118285-3.png 1488w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/08\/word-image-118285-3-300x178.png 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/08\/word-image-118285-3-1024x608.png 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/08\/word-image-118285-3-768x456.png 768w\" sizes=\"(max-width: 1488px) 100vw, 1488px\" \/><\/figure>\n\n\n\n<h3 id=\"S\u1eeda_b\u1eb1ng_credential_Query_Auth_thay_v\u00ec_d\u00e1n_key_v\u00e0o_URL\">S\u1eeda b\u1eb1ng credential Query Auth thay v\u00ec d\u00e1n key v\u00e0o URL<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">C\u00e1ch nhanh l\u00e0 th\u00eam <code>&amp;appid=API_KEY<\/code> v\u00e0o URL, nh\u01b0ng key khi \u0111\u00f3 n\u1eb1m trong c\u1ea5u h\u00ecnh workflow: l\u1ed9 khi b\u1ea1n export, chia s\u1ebb workflow hay ch\u1ee5p m\u00e0n h\u00ecnh. Theo <a href=\"https:\/\/docs.n8n.io\/integrations\/builtin\/credentials\/httprequest\/\" target=\"_blank\" rel=\"noopener nofollow\">t\u00e0i li\u1ec7u credential c\u1ee7a node HTTP Request<\/a>, n\u00ean d\u00f9ng Generic credential:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Trong node HTTP Request, m\u1ee5c Authentication ch\u1ecdn <strong>Generic Credential Type<\/strong>, Generic Auth Type ch\u1ecdn <strong>Query Auth<\/strong>.<\/li>\n\n\n<li>T\u1ea1o credential m\u1edbi: Name l\u00e0 <code>appid<\/code>, Value l\u00e0 API key c\u1ee7a b\u1ea1n, r\u1ed3i l\u01b0u.<\/li>\n\n\n<li>Gi\u1eef URL <code>https:\/\/api.openweathermap.org\/data\/2.5\/weather?q=Hanoi&amp;units=metric<\/code>; n8n t\u1ef1 th\u00eam <code>appid<\/code> khi g\u1eedi.<\/li>\n\n\n<li>B\u1ea5m Execute step l\u1ea1i. Node tr\u1ea3 JSON th\u1eddi ti\u1ebft; <code>units=metric<\/code> \u0111\u1ed5i nhi\u1ec7t \u0111\u1ed9 t\u1eeb Kelvin sang \u0111\u1ed9 C.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"685\" height=\"770\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-ket-qua-json-thoi-tiet.webp\" alt=\"Panel OUTPUT c\u1ee7a node HTTP Request tr\u1ea3 JSON th\u1eddi ti\u1ebft H\u00e0 N\u1ed9i g\u1ed3m coord, weather, main v\u1edbi nhi\u1ec7t \u0111\u1ed9 31,41 \u0111\u1ed9 C sau khi s\u1eeda l\u1ed7i 401\" class=\"wp-image-131498\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-ket-qua-json-thoi-tiet.webp 685w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/khac-phuc-loi-401-unauthorized-authorization-failed-ket-qua-json-thoi-tiet-267x300.webp 267w\" sizes=\"(max-width: 685px) 100vw, 685px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">API c\u1ea7n key trong header th\u00ec ch\u1ecdn <strong>Header Auth<\/strong> (Name v\u00ed d\u1ee5 <code>X-API-Key<\/code> ho\u1eb7c <code>Authorization<\/code>, Value l\u00e0 key ho\u1eb7c <code>Bearer &lt;token&gt;<\/code>). D\u1ecbch v\u1ee5 c\u00f3 s\u1eb5n node ri\u00eang nh\u01b0 Google Sheets, Telegram, OpenAI th\u00ec \u01b0u ti\u00ean <strong>Predefined Credential Type<\/strong> c\u1ee7a d\u1ecbch v\u1ee5 \u0111\u00f3. Xem th\u00eam <a href=\"https:\/\/tino.vn\/blog\/credential-trong-n8n-la-gi\/\">credential trong n8n l\u00e0 g\u00ec v\u00e0 c\u00e1ch qu\u1ea3n l\u00fd<\/a>.<\/p>\n\n\n\n<h3 id=\"L\u1ed7i_401_v\u1edbi_OAuth2_trong_n8n\">L\u1ed7i 401 v\u1edbi OAuth2 trong n8n<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">V\u1edbi credential OAuth2, l\u1ed7i 401 xu\u1ea5t hi\u1ec7n sau m\u1ed9t th\u1eddi gian ch\u1ea1y \u1ed5n th\u01b0\u1eddng do access token ho\u1eb7c refresh token \u0111\u00e3 h\u1ebft hi\u1ec7u l\u1ef1c. M\u1edf credential, b\u1ea5m k\u1ebft n\u1ed1i l\u1ea1i t\u00e0i kho\u1ea3n r\u1ed3i ch\u1ea1y l\u1ea1i node. Ri\u00eang Google, \u1ee9ng d\u1ee5ng OAuth \u0111\u1ec3 \u1edf tr\u1ea1ng th\u00e1i Testing c\u00f3 refresh token h\u1ebft h\u1ea1n sau 7 ng\u00e0y; c\u00e1ch x\u1eed l\u00fd c\u00f3 trong b\u00e0i <a href=\"https:\/\/tino.vn\/blog\/sua-loi-tich-hop-google-sheet-drive-voi-n8n\/\">s\u1eeda l\u1ed7i t\u00edch h\u1ee3p Google Sheets, Google Drive v\u1edbi n8n<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">L\u1ed7i 401 ch\u1ec9 l\u00e0 m\u1ed9t d\u00f2ng trong b\u1ea3ng m\u00e3 l\u1ed7i khi g\u1ecdi API. C\u00e1c m\u00e3 kh\u00e1c nh\u01b0 400, 403, 404, 429, 5xx v\u00e0 l\u1ed7i k\u1ebft n\u1ed1i \u0111\u01b0\u1ee3c t\u1ed5ng h\u1ee3p \u1edf <a href=\"https:\/\/tino.vn\/blog\/loi-ket-noi-api-thuong-gap-trong-n8n\/\">b\u1ea3ng m\u00e3 l\u1ed7i API th\u01b0\u1eddng g\u1eb7p trong n8n<\/a>.<\/p>\n\n\n\n<h2 id=\"Nh\u1eefng_c\u00e2u_h\u1ecfi_th\u01b0\u1eddng_g\u1eb7p\">Nh\u1eefng c\u00e2u h\u1ecfi th\u01b0\u1eddng g\u1eb7p<\/h2>\n\n\n\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"401_l\u00e0_l\u1ed7i_g\u00ec,_do_m\u00e1y_m\u00ecnh_hay_do_m\u00e1y_ch\u1ee7?\">401 l\u00e0 l\u1ed7i g\u00ec, do m\u00e1y m\u00ecnh hay do m\u00e1y ch\u1ee7?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">L\u1ed7i 401 l\u00e0 l\u1ed7i ph\u00eda client theo ph\u00e2n lo\u1ea1i HTTP (nh\u00f3m 4xx): m\u00e1y ch\u1ee7 v\u1eabn ho\u1ea1t \u0111\u1ed9ng, nh\u01b0ng request c\u1ee7a b\u1ea1n thi\u1ebfu ho\u1eb7c sai th\u00f4ng tin x\u00e1c th\u1ef1c. Ph\u1ea7n c\u1ea7n s\u1eeda th\u01b0\u1eddng \u1edf th\u00f4ng tin \u0111\u0103ng nh\u1eadp, key ho\u1eb7c token b\u1ea1n g\u1eedi. Ngo\u1ea1i l\u1ec7 l\u00e0 khi nh\u00e0 cung c\u1ea5p v\u1eeba \u0111\u1ed5i c\u01a1 ch\u1ebf x\u00e1c th\u1ef1c ho\u1eb7c thu h\u1ed3i key h\u00e0ng lo\u1ea1t.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"\u0110\u1eb7t_API_key_trong_URL_hay_trong_header_th\u00ec_an_to\u00e0n_h\u01a1n?\">\u0110\u1eb7t API key trong URL hay trong header th\u00ec an to\u00e0n h\u01a1n?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">Header an to\u00e0n h\u01a1n v\u00ec URL d\u1ec5 b\u1ecb ghi v\u00e0o log m\u00e1y ch\u1ee7, l\u1ecbch s\u1eed tr\u00ecnh duy\u1ec7t v\u00e0 \u1ea3nh ch\u1ee5p m\u00e0n h\u00ecnh. Nhi\u1ec1u API ch\u1ec9 nh\u1eadn key qua URL (nh\u01b0 OpenWeatherMap); khi \u0111\u00f3 trong n8n h\u00e3y d\u00f9ng credential Query Auth \u0111\u1ec3 key kh\u00f4ng n\u1eb1m trong c\u1ea5u h\u00ecnh workflow.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"T\u00f4i_\u0111\u00e3_nh\u1eadp_\u0111\u00fang_API_key_nh\u01b0ng_v\u1eabn_b\u1ecb_401,_t\u1ea1i_sao?\">T\u00f4i \u0111\u00e3 nh\u1eadp \u0111\u00fang API key nh\u01b0ng v\u1eabn b\u1ecb 401, t\u1ea1i sao?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">Ki\u1ec3m tra ba \u0111i\u1ec3m: key c\u00f3 \u0111\u1eb7t \u0111\u00fang v\u1ecb tr\u00ed API y\u00eau c\u1ea7u (header, query hay body) v\u00e0 \u0111\u00fang t\u00ean tham s\u1ed1 kh\u00f4ng; \u0111\u1ecbnh d\u1ea1ng header c\u00f3 \u0111\u1ee7, v\u00ed d\u1ee5 thi\u1ebfu ch\u1eef &#8220;Bearer &#8221; ho\u1eb7c th\u1eeba kho\u1ea3ng tr\u1eafng; key c\u00f3 thu\u1ed9c \u0111\u00fang m\u00f4i tr\u01b0\u1eddng (th\u1eed hay th\u1eadt) v\u00e0 \u0111\u00e3 \u0111\u01b0\u1ee3c k\u00edch ho\u1ea1t ch\u01b0a.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"L\u1ed7i_401_c\u00f3_t\u1ef1_h\u1ebft_kh\u00f4ng?\">L\u1ed7i 401 c\u00f3 t\u1ef1 h\u1ebft kh\u00f4ng?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">L\u1ed7i 401 kh\u00f4ng t\u1ef1 h\u1ebft n\u1ebfu th\u00f4ng tin x\u00e1c th\u1ef1c v\u1eabn sai. Ngo\u1ea1i l\u1ec7 l\u00e0 khi m\u00e1y ch\u1ee7 x\u00e1c th\u1ef1c c\u1ee7a nh\u00e0 cung c\u1ea5p g\u1eb7p s\u1ef1 c\u1ed1 t\u1ea1m th\u1eddi. V\u1edbi token h\u1ebft h\u1ea1n, b\u1ea1n c\u1ea7n l\u00e0m m\u1edbi token ho\u1eb7c k\u1ebft n\u1ed1i l\u1ea1i t\u00e0i kho\u1ea3n.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"Th\u1eed_l\u1ea1i_t\u1ef1_\u0111\u1ed9ng_(Retry_On_Fail)_c\u00f3_s\u1eeda_\u0111\u01b0\u1ee3c_l\u1ed7i_401_kh\u00f4ng?\">Th\u1eed l\u1ea1i t\u1ef1 \u0111\u1ed9ng (Retry On Fail) c\u00f3 s\u1eeda \u0111\u01b0\u1ee3c l\u1ed7i 401 kh\u00f4ng?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">Kh\u00f4ng. Retry On Fail trong n8n h\u1eefu \u00edch cho l\u1ed7i t\u1ea1m th\u1eddi nh\u01b0 429 hay 5xx. V\u1edbi 401, g\u1eedi l\u1ea1i c\u00f9ng th\u00f4ng tin \u0111\u0103ng nh\u1eadp v\u1eabn b\u1ecb t\u1eeb ch\u1ed1i, n\u00ean h\u00e3y s\u1eeda credential tr\u01b0\u1edbc.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\n<script type=\"application\/ld+json\">\n\t{\n\t\t\"@context\": \"https:\/\/schema.org\",\n\t\t\"@type\": \"FAQPage\",\n\t\t\"mainEntity\": [\n\t\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"401 l\u00e0 l\u1ed7i g\u00ec, do m\u00e1y m\u00ecnh hay do m\u00e1y ch\u1ee7?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>L\u1ed7i 401 l\u00e0 l\u1ed7i ph\u00eda client theo ph\u00e2n lo\u1ea1i HTTP (nh\u00f3m 4xx): m\u00e1y ch\u1ee7 v\u1eabn ho\u1ea1t \u0111\u1ed9ng, nh\u01b0ng request c\u1ee7a b\u1ea1n thi\u1ebfu ho\u1eb7c sai th\u00f4ng tin x\u00e1c th\u1ef1c. Ph\u1ea7n c\u1ea7n s\u1eeda th\u01b0\u1eddng \u1edf th\u00f4ng tin \u0111\u0103ng nh\u1eadp, key ho\u1eb7c token b\u1ea1n g\u1eedi. Ngo\u1ea1i l\u1ec7 l\u00e0 khi nh\u00e0 cung c\u1ea5p v\u1eeba \u0111\u1ed5i c\u01a1 ch\u1ebf x\u00e1c th\u1ef1c ho\u1eb7c thu h\u1ed3i key h\u00e0ng lo\u1ea1t.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"\u0110\u1eb7t API key trong URL hay trong header th\u00ec an to\u00e0n h\u01a1n?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>Header an to\u00e0n h\u01a1n v\u00ec URL d\u1ec5 b\u1ecb ghi v\u00e0o log m\u00e1y ch\u1ee7, l\u1ecbch s\u1eed tr\u00ecnh duy\u1ec7t v\u00e0 \u1ea3nh ch\u1ee5p m\u00e0n h\u00ecnh. Nhi\u1ec1u API ch\u1ec9 nh\u1eadn key qua URL (nh\u01b0 OpenWeatherMap); khi \u0111\u00f3 trong n8n h\u00e3y d\u00f9ng credential Query Auth \u0111\u1ec3 key kh\u00f4ng n\u1eb1m trong c\u1ea5u h\u00ecnh workflow.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"T\u00f4i \u0111\u00e3 nh\u1eadp \u0111\u00fang API key nh\u01b0ng v\u1eabn b\u1ecb 401, t\u1ea1i sao?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>Ki\u1ec3m tra ba \u0111i\u1ec3m: key c\u00f3 \u0111\u1eb7t \u0111\u00fang v\u1ecb tr\u00ed API y\u00eau c\u1ea7u (header, query hay body) v\u00e0 \u0111\u00fang t\u00ean tham s\u1ed1 kh\u00f4ng; \u0111\u1ecbnh d\u1ea1ng header c\u00f3 \u0111\u1ee7, v\u00ed d\u1ee5 thi\u1ebfu ch\u1eef \\\"Bearer \\\" ho\u1eb7c th\u1eeba kho\u1ea3ng tr\u1eafng; key c\u00f3 thu\u1ed9c \u0111\u00fang m\u00f4i tr\u01b0\u1eddng (th\u1eed hay th\u1eadt) v\u00e0 \u0111\u00e3 \u0111\u01b0\u1ee3c k\u00edch ho\u1ea1t ch\u01b0a.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"L\u1ed7i 401 c\u00f3 t\u1ef1 h\u1ebft kh\u00f4ng?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>L\u1ed7i 401 kh\u00f4ng t\u1ef1 h\u1ebft n\u1ebfu th\u00f4ng tin x\u00e1c th\u1ef1c v\u1eabn sai. Ngo\u1ea1i l\u1ec7 l\u00e0 khi m\u00e1y ch\u1ee7 x\u00e1c th\u1ef1c c\u1ee7a nh\u00e0 cung c\u1ea5p g\u1eb7p s\u1ef1 c\u1ed1 t\u1ea1m th\u1eddi. V\u1edbi token h\u1ebft h\u1ea1n, b\u1ea1n c\u1ea7n l\u00e0m m\u1edbi token ho\u1eb7c k\u1ebft n\u1ed1i l\u1ea1i t\u00e0i kho\u1ea3n.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"Th\u1eed l\u1ea1i t\u1ef1 \u0111\u1ed9ng (Retry On Fail) c\u00f3 s\u1eeda \u0111\u01b0\u1ee3c l\u1ed7i 401 kh\u00f4ng?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>Kh\u00f4ng. Retry On Fail trong n8n h\u1eefu \u00edch cho l\u1ed7i t\u1ea1m th\u1eddi nh\u01b0 429 hay 5xx. V\u1edbi 401, g\u1eedi l\u1ea1i c\u00f9ng th\u00f4ng tin \u0111\u0103ng nh\u1eadp v\u1eabn b\u1ecb t\u1eeb ch\u1ed1i, n\u00ean h\u00e3y s\u1eeda credential tr\u01b0\u1edbc.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t\t\t\t]\n\t}\n<\/script>\n\n\n\n<p class=\"wp-block-paragraph\">Mu\u1ed1n ch\u1ea1y n8n 24\/7 m\u00e0 kh\u00f4ng t\u1ef1 c\u00e0i? <a href=\"https:\/\/tino.vn\/vps-n8n\">VPS n8n c\u1ee7a Tino<\/a> c\u00e0i s\u1eb5n n8n tr\u00ean VPS NVMe \u0111\u1eb7t t\u1ea1i Vi\u1ec7t Nam; b\u1ea1n v\u1eabn c\u00f3 quy\u1ec1n root \u0111\u1ec3 c\u1ea5u h\u00ecnh. Xem c\u1ea5u h\u00ecnh v\u00e0 gi\u00e1 tr\u00ean trang s\u1ea3n ph\u1ea9m.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>L\u1ed7i 401 Unauthorized l\u00e0 m\u00e3 tr\u1ea1ng th\u00e1i HTTP cho bi\u1ebft m\u00e1y ch\u1ee7 t\u1eeb ch\u1ed1i y\u00eau c\u1ea7u v\u00ec thi\u1ebfu ho\u1eb7c sai th\u00f4ng tin x\u00e1c th\u1ef1c, nh\u01b0 m\u1eadt kh\u1ea9u, API key hay token \u0111\u00e3 h\u1ebft h\u1ea1n. Kh\u00e1c v\u1edbi 403 Forbidden (\u0111\u00e3 x\u00e1c th\u1ef1c nh\u01b0ng kh\u00f4ng c\u00f3 quy\u1ec1n), l\u1ed7i 401 th\u01b0\u1eddng h\u1ebft khi b\u1ea1n \u0111\u0103ng nh\u1eadp l\u1ea1i, g\u1eedi [&hellip;]<\/p>\n","protected":false},"author":23,"featured_media":131428,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7397],"tags":[7343],"class_list":["post-118285","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-n8n","tag-n8n"],"_links":{"self":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/118285","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/users\/23"}],"replies":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/comments?post=118285"}],"version-history":[{"count":2,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/118285\/revisions"}],"predecessor-version":[{"id":131557,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/118285\/revisions\/131557"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/media\/131428"}],"wp:attachment":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/media?parent=118285"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/categories?post=118285"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/tags?post=118285"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}