mirror of
				https://kkgithub.com/actions/setup-node.git
				synced 2025-11-04 04:31:55 +08:00 
			
		
		
		
	
		
			
	
	
		
			38 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			38 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| 
								 | 
							
								# atob-lite
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Smallest/simplest possible means of using atob with both Node and browserify.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								In the browser, decoding base64 strings is done using:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								``` javascript
							 | 
						||
| 
								 | 
							
								var decoded = atob(encoded)
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								However in Node, it's done like so:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								``` javascript
							 | 
						||
| 
								 | 
							
								var decoded = new Buffer(encoded, 'base64').toString('utf8')
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								You can easily check if `Buffer` exists and switch between the approaches
							 | 
						||
| 
								 | 
							
								accordingly, but using `Buffer` anywhere in your browser source will pull
							 | 
						||
| 
								 | 
							
								in browserify's `Buffer` shim which is pretty hefty. This package uses
							 | 
						||
| 
								 | 
							
								the `main` and `browser` fields in its `package.json` to perform this
							 | 
						||
| 
								 | 
							
								check at build time and avoid pulling `Buffer` in unnecessarily.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Usage
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[](https://nodei.co/npm/atob-lite/)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								### `decoded = atob(encoded)`
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Returns the decoded value of a base64-encoded string.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## License
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								MIT. See [LICENSE.md](http://github.com/hughsk/atob-lite/blob/master/LICENSE.md) for details.
							 |