1 Star 1 Fork 0

HuaweiCloudDeveloper / OBSFormUploadDemo-frontend

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

OBSFormUploadDemo-frontend

介绍

表单数据上传至华为云OBS前端代码

软件架构

业务流程图

img.png

安装教程

  1. 在本地安装 node
  2. 进入项目文件夹安装 npm 依赖
npm install

项目配置

1、前端代码配置

本前端demo准备了两种表单上传方式

方式一:Upload By Form

  • 准备表单HTML页面,配置AK、OBS桶名、OBS域名,并将生成的请求参数填入HTML页面。

  • /api-xxx 请求用于从服务端获取 signature/policy 等信息。 img.png img.png

  • 上传成功页面,上传成功后会跳转到 success_action_redirect 参数中填写的地址,此页面可从 location.search 中获取成功返回的参数。同时,后端项目中生成 policy 时也需要加入 success_action_redirect 参数。 img.png

方式二:Upload By XHR

即通过Ajax

  • 由于OBS以桶为单位提供基于HTTP/HTTPS协议的分布式存储服务, 而浏览器默认不允许Ajax跨域请求,所以我们先配置桶的CORS以支持Ajax跨域访问(下图为通过控制台配置)。可参考 配置桶的CORS img.png

  • 获取policy和signature;通过OBS桶名、域名拼接obs上传路径。 img.png

  • 准备表 JavaScript 模块,配置AK、OBS桶名、OBS域名,并将生成的请求参数放入 FormData 对象。 img.png img.png

  • 页面使用Ajax img.png

2、配置代理

后端服务器未设置允许跨域,所以在本地使用了代理

配置后端路径和端口:

img.png

3、启动前端服务,选择本地文件,进行表单上传。

  1. 启动服务
npm start
  1. 在浏览器中打开
  1. 选择文件填写文件名上传

后端代码

后端代码参考:https://gitee.com/HuaweiCloudDeveloper/OBSFormUploadDemo-backend

参与贡献

  1. Fork 本仓库
  2. 新建 Feat_xxx 分支
  3. 提交代码
  4. 新建 Pull Request

特技

  1. 使用 Readme_XXX.md 来支持不同的语言,例如 Readme_en.md, Readme_zh.mdGitee 上的优秀开源项目

空文件

简介

表单数据上传至华为云OBS前端代码 展开 收起
JavaScript
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
JavaScript
1
https://gitee.com/HuaweiCloudDeveloper/obsform-upload-demo-frontend.git
git@gitee.com:HuaweiCloudDeveloper/obsform-upload-demo-frontend.git
HuaweiCloudDeveloper
obsform-upload-demo-frontend
OBSFormUploadDemo-frontend
master

搜索帮助