Mercurial > hg > nginx-site
comparison xml/ru/docs/njs/examples.xml @ 2527:351a669a576d
Corrected JWT example in njs.
author | Yaroslav Zhuravlev <yar@nginx.com> |
---|---|
date | Wed, 15 Apr 2020 19:21:55 +0100 |
parents | 3ca5edd3ada3 |
children | 9c8a89d3876f |
comparison
equal
deleted
inserted
replaced
2526:450860350bf7 | 2527:351a669a576d |
---|---|
7 <!DOCTYPE article SYSTEM "../../../../dtd/article.dtd"> | 7 <!DOCTYPE article SYSTEM "../../../../dtd/article.dtd"> |
8 | 8 |
9 <article name="Примеры использования" | 9 <article name="Примеры использования" |
10 link="/ru/docs/njs/examples.html" | 10 link="/ru/docs/njs/examples.html" |
11 lang="ru" | 11 lang="ru" |
12 rev="11"> | 12 rev="12"> |
13 | 13 |
14 <section id="helloword" name="Hello World"> | 14 <section id="helloword" name="Hello World"> |
15 | 15 |
16 <para> | 16 <para> |
17 <path>nginx.conf</path>: | 17 <path>nginx.conf</path>: |
182 | 182 |
183 <para> | 183 <para> |
184 <path>hs_jwt.js</path>: | 184 <path>hs_jwt.js</path>: |
185 <example> | 185 <example> |
186 function generate_hs256_jwt(claims, key, valid) { | 186 function generate_hs256_jwt(claims, key, valid) { |
187 var header = { typ: "JWT", | 187 var header = { typ: "JWT", alg: "HS256" }; |
188 alg: "HS256", | 188 var claims = Object.assign(claims, {exp: Math.floor(Date.now()/1000) + valid}); |
189 exp: Math.floor(Date.now()/1000) + valid }; | |
190 | 189 |
191 var s = [header, claims].map(JSON.stringify) | 190 var s = [header, claims].map(JSON.stringify) |
192 .map(v=>v.toBytes()) | 191 .map(v=>v.toUTF8()) |
193 .map(v=>v.toString('base64url')) | 192 .map(v=>v.toString('base64url')) |
194 .join('.'); | 193 .join('.'); |
195 | 194 |
196 var h = require('crypto').createHmac('sha256', key); | 195 var h = require('crypto').createHmac('sha256', key); |
197 | 196 |