gs-data
Version:
> A foundational library for reading and writing network or file data on the browser side<br/> > For local file read/write operations, [gs-web-fs](https://www.npmjs.com/package/gs-web-fs), built on top of this library, offers enhanced ease of use<br/> >
37 lines (26 loc) • 1.62 kB
Markdown
for reading and writing network or file data on the browser side<br/>
> For local file read/write operations, [gs-web-fs](https://www.npmjs.com/package/gs-web-fs), built on top of this library, offers enhanced ease of use<br/>
> For network data reading and downloading, [gs-fetch](https://www.npmjs.com/package/gs-fetch), also based on this library, provides a more convenient solution
>> The main features include automatic type detection by file content and file extension analysis.
> Automatically reads common browser-side data types based on content
>> e.g., text, images, HTML, XML, etc.
> Also includes a SimpleData type wrapper, optimized for network transmission and smaller than JSON
```shell
npx yarn add gs-data
```
```ts
import {parseMime,getExtensionMime,readBlob} from 'https://cdn.jsdmirror.cn/npm/gs-data/lib/index.web.js'
const blob = await fetch('https://emoji.bj.bcebos.com/yige-aigc/index_aigc/final/toolspics/15.png').then(r => r.blob());
const mime = await parseMime(blob); // Analyze data type from blob, supports images, text, videos, segments, etc.
console.log(mime); // Outputs: image/png
const type = await getExtensionMime(mime!);
console.log(type); // Outputs: {ext: 'png', mime: 'image/png'}
const pkg = await readBlob(blob);
document.body.appendChild(pkg.result); // Displays the image on the page
console.log(pkg); // Outputs: {ext: 'png', mime: 'image/png', blob: Blob, type: 2, result: img}
```
> A foundational library