File tree Expand file tree Collapse file tree 4 files changed +33
-0
lines changed Expand file tree Collapse file tree 4 files changed +33
-0
lines changed Original file line number Diff line number Diff line change @@ -351,3 +351,4 @@ module.exports.sign = nativeBinding.sign
351
351
module . exports . signSync = nativeBinding . signSync
352
352
module . exports . verify = nativeBinding . verify
353
353
module . exports . verifySync = nativeBinding . verifySync
354
+ module . exports . decodeHader = nativeBinding . decodeHader
Original file line number Diff line number Diff line change
1
+ use napi:: { bindgen_prelude:: * } ;
2
+ use napi_derive:: napi;
3
+
4
+ use crate :: { header:: Header } ;
5
+
6
+ #[ napi]
7
+ pub fn decode_header (
8
+ token : & str
9
+ ) -> Header {
10
+ let result = jsonwebtoken:: decode_header ( & token) ;
11
+
12
+ let header = Header :: from ( result. unwrap ( ) ) ;
13
+ }
Original file line number Diff line number Diff line change @@ -73,6 +73,22 @@ impl From<&Header> for jsonwebtoken::Header {
73
73
}
74
74
}
75
75
76
+ impl From < jsonwebtoken:: Header > for Header {
77
+ #[ inline]
78
+ fn from ( value : & jsonwebtoken:: Header ) -> Header {
79
+ Header {
80
+ algorithm : value. alg . into ( ) ,
81
+ content_type : value. cty . clone ( ) ,
82
+ json_key_url : value. jku . clone ( ) ,
83
+ key_id : value. kid . clone ( ) ,
84
+ x5_url : value. x5u . clone ( ) ,
85
+ x5_cert_chain : value. x5c . clone ( ) ,
86
+ x5_cert_thumbprint : value. x5t . clone ( ) ,
87
+ x5t_s256_cert_thumbprint : value. x5t_s256 . clone ( ) ,
88
+ }
89
+ }
90
+ }
91
+
76
92
impl Header {
77
93
#[ inline]
78
94
pub fn merge ( self , other : Self ) -> Self {
Original file line number Diff line number Diff line change 3
3
4
4
/// Explicit extern crate to use allocator.
5
5
extern crate global_alloc;
6
+ extern crate core;
6
7
7
8
mod algorithm;
8
9
mod claims;
10
+ mod decode;
9
11
mod header;
10
12
mod sign;
11
13
mod validation;
12
14
mod verify;
13
15
14
16
pub use algorithm:: Algorithm ;
15
17
pub use claims:: Claims ;
18
+ pub use decode:: { decode_header} ;
16
19
pub use header:: Header ;
17
20
pub use sign:: { sign, sign_sync} ;
18
21
pub use validation:: Validation ;
You can’t perform that action at this time.
0 commit comments