毗连到您的云和漫衍式存储的音乐播放器
2020年外洋互联网巨头正不绝在加密及财富配套偏向下沉,为两边冲破用户生态壁垒做出尽力;而海内巨头则连系财富侧举办更多场景开拓,低落中小企业插手门槛。一个好的应用模子,用户增长速度会很是迅速,会为用户提供更利便快捷的处事。Diffuse作为毗连到用户的云存储和漫衍式存储的播放器,足以浮现这一特点。
Diffuse是一个静态Web应用措施,这意味着它只是HTML,CSS和Javascript。不涉及REST API,数据库或任何与后端相关的内容。该应用措施利用哈希值,基于片断的路由系统,因此您不需要任何非凡的处事器法则即可举办路由。
Diffuse是一种分手的音乐播放器,由两个主要部门构成。一部门是音乐,另一部门是您的数据(譬喻,播放列表),两者都在您选择的位置。这意味着没有用于Diffuse的中央处事器,所有处理惩罚都在设备长举办,所有数据都在您的节制范畴内。您可以利用Web版本或本机版本,也可以通过从Github下载预构建的软件包来本身托管它。
1、音乐层
该层毗连到存储音乐的处事,没有数据写入这些处事。您可以团结以下所有内容:
Amazon S3
Azure Blob Storage
Azure File Storage
Dropbox
Google Drive
IPFS(supports DNSLink & IPNS)
WebDAV
2、用户层
该层将利用单个处事来存储您的数据。您的数据是您的配置,保藏夹,播放列表等。您可以在以下处事中举办选择:
Blockstack
Dropbox
IndexedDB(Browser)
IPFS(using MFS)
RemoteStorage
Textile
diffuse是如何事情的diffuse查找给定处事上的所有音乐文件,提取元数据,然后通过先前表明的用户层举办存储。
首先请启动软件,diffuse.sh,而无需安装任何措施。现阶段用户可通过Blockstack,Remote Storage举办身份验证,,可能通过欣赏器匿名利用该产物。利用正确的身份验证要领可以利用户生存音乐元数据,用户保藏夹和配置等内容,而假如排除欣赏器,则“匿名”登录大概会导致数据丢失。用户通过身份验证后,便可以添加新内容或会见以前添加的内容。
面向前端的用户托管在Netlify上。在去中心化范畴之外,通过下载html并仿照Netlify(查抄此IPFS + ENS网站托管教程),虽然可以对前端举办自我托管。
1、支持的文件名目
MP3
MP4/M4A
FLAC
OGG
WAV
WEBM
2、 CORS
您只需要做一件事即可使您选择的处事与该应用措施一起利用,从而配置了CORS(跨源资源共享)。以下是每种处事所需的说明:
3、亚马逊
您可以在S3 AWS节制台的“权限”选项卡下找到CORS设置编辑器。
<?xml version="1.0\" encoding="UTF-8\"?>
<CORSConfigurationxmlns="http://s3.amazonaws.com/doc/2006-03-01/\">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin><AllowedMethod>GET</AllowedMethod><AllowedMethod>HEAD</AllowedMethod>
<MaxAgeSeconds>31536000</MaxAgeSeconds>
<ExposeHeader>Content-Length</ExposeHeader>
<ExposeHeader>Content-Type</ExposeHeader> <AllowedHeader>Range</AllowedHeader>
</CORSRule>
</CORSConfiguration>
4、BTFS
将带有协议的应用措施域添加到答允的来历列表中。
btfs config --json API.HTTPHeaders.Access-Control-Allow-Origin '[\"https://diffuse.sh\", \"http://diffuse.sh.ipns.localhost:8080\", \"http://127.0.0.1:44999\"]'
您也可以在Web UI中举办此变动,可以在“配置→BTFS Config”下找到它。
{
\"API\": {
\"HTTPHeaders\": {
\"Access-Control-Allow-Origin\": [
\"https://diffuse.sh\", // ???? Default
\"http://diffuse.sh.ipns.localhost:8080\", // IPNS
\"http://127.0.0.1:44999\" // Electron app
]
}
}
}
5、IPFS
将带有协议的应用措施域添加到答允的来历列表中。
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Origin '[\"https://diffuse.sh\", \"http://diffuse.sh.ipns.localhost:8080\", \"http://127.0.0.1:44999\"]'
您也可以在Web UI中举办此变动,可以在“配置→IPFS Config”下找到它。
{
\"API\": {
\"HTTPHeaders\": {
\"Access-Control-Allow-Origin\": [
\"https://diffuse.sh\", // ???? Default
\"http://diffuse.sh.ipns.localhost:8080\", // IPNS through IPFS Companion
\"http://127.0.0.1:44999\" // Electron app
]
}
}
}
6、Microsoft Azure存储
您可以在“配置-> CORS”下找到CORS设置。
然后在输入框中填写以下内容(从左到右):
ALLOWED ORIGINS *
ALLOWED METHODS GET, HEAD
ALLOWED HEADERS Range
EXPOSED HEADERS Content-Length, Content-Range
MAX AGE 0
7、Textile
将带有协议的应用措施域添加到设置中答允的来历列表中。
{
\"API\": {
\"HTTPHeaders\": {
\"Access-Control-Allow-Origin\": [
\"https://diffuse.sh\",
\"http://127.0.0.1:8080\",
\"http://127.0.0.1:44999\"
]
}
}
}
8、WebDAV
取决于您的WebDAV处事器。
Henrique Dias的WebDAV处事器的示例配置:
cors:
enabled: true
credentials: true
allowed_headers:
- Authorization
- Content-Type
- Depth
- Range
allowed_methods:
- GET
- HEAD
- PROPFIND
allowed_hosts:
- https://diffuse.sh
- :44999
exposed_headers:
- Content-Length
- Content-Type
【星际假设】
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。