真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

輕松實(shí)現(xiàn)函數(shù)計(jì)算文件上傳下載

這是一個(gè)包含了函數(shù)計(jì)算每種 Runtime 結(jié)合 HTTP Trigger 實(shí)現(xiàn)文件上傳和文件下載的示例集。每個(gè)示例包括:

10年積累的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有天祝藏族自治免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

  • 一個(gè)公共 HTML 頁(yè)面,該頁(yè)面有一個(gè)文件選擇框和上傳按鈕,會(huì)列出已經(jīng)上傳的文件,點(diǎn)擊某個(gè)已上傳的文件可以把文件下載下來(lái);
  • 支持文件上傳、下載和列舉的函數(shù)。

我們知道不同語(yǔ)言在處理 HTTP 協(xié)議上傳下載時(shí)都有很多中方法和社區(qū)庫(kù),特別是結(jié)合函數(shù)計(jì)算的場(chǎng)景,開發(fā)人員往往需要耗費(fèi)不少精力去學(xué)習(xí)和嘗試。本示例集編撰的目的就是節(jié)省開發(fā)者甄別的精力和時(shí)間,為每種語(yǔ)言提供一種有效且符合社區(qū)最佳實(shí)踐的方法,可以拿來(lái)即用。

輕松實(shí)現(xiàn)函數(shù)計(jì)算文件上傳下載

當(dāng)前已支持的 Runtime 包括:

  • nodejs
  • python
  • php
  • java

計(jì)劃支持的 Runtime 包括:

  • dotnetcore

不打算支持的 Runtime 包括:

  • custom

使用限制

由于函數(shù)計(jì)算對(duì)于 HTTP 的 Request 和 Response 的 Body 大小限制均為 6M,所以該示例集只適用于借助函數(shù)計(jì)算上傳和下載文件小于 6M 的場(chǎng)景。對(duì)于大于 6M 的情況,可以考慮如下方法:

  1. 分片上傳,把文件切分成小塊,上傳以后再拼接起來(lái);
  2. 借助于 OSS,將文件先上傳 OSS,函數(shù)從 OSS 上下載文件,處理完以后回傳 OSS;
  3. 借助于 NAS,將大文件放在 NAS 網(wǎng)盤上,函數(shù)可以像讀寫普通文件系統(tǒng)一樣訪問(wèn) NAS 網(wǎng)盤的文件。

快速開始

安裝依賴

在開始之前請(qǐng)確保開發(fā)環(huán)境已經(jīng)安裝了如下工具:

  • docker
  • funcraft
  • git
  • make

構(gòu)建并啟動(dòng)函數(shù)

克隆代碼:

git clone https://github.com/vangie/fc-file-transfer

本地啟動(dòng)函數(shù):

$ make start
...
HttpTrigger httpTrigger of file-transfer/nodejs was registered
        url: http://localhost:8000/2016-08-15/proxy/file-transfer/nodejs
        methods: [ 'GET', 'POST' ]
        authType: ANONYMOUS
HttpTrigger httpTrigger of file-transfer/python was registered
        url: http://localhost:8000/2016-08-15/proxy/file-transfer/python
        methods: [ 'GET', 'POST' ]
        authType: ANONYMOUS
HttpTrigger httpTrigger of file-transfer/java was registered
        url: http://localhost:8000/2016-08-15/proxy/file-transfer/java
        methods: [ 'GET', 'POST' ]
        authType: ANONYMOUS
HttpTrigger httpTrigger of file-transfer/php was registered
        url: http://localhost:8000/2016-08-15/proxy/file-transfer/php
        methods: [ 'GET', 'POST' ]
        authType: ANONYMOUS
function compute app listening on port 8000!

make start 命令會(huì)調(diào)用 Makefile 文件中的指令,通過(guò) fun local 在本地的 8000 端口開放 HTTP 服務(wù),控制臺(tái)會(huì)打印出每個(gè) HTTP Trigger 的 URL 、支持的 HTTP 方法,以及認(rèn)證方式。

效果演示

上面四個(gè) URL 地址隨便選一個(gè)在瀏覽器中打開示例頁(yè)面。

輕松實(shí)現(xiàn)函數(shù)計(jì)算文件上傳下載

接口說(shuō)明

所有示例都實(shí)現(xiàn)了下述四個(gè) HTTP 接口:

  • GET / 返回文件上傳 Form 的 HTML 頁(yè)面
  • GET /list 以 JSON 數(shù)組形式返回文件列表
  • POST /uploadmultipart/form-data格式上傳文件
    • fileContent 作為文件字段
    • fileName 作為文件名字段
  • GET /download?filename=xxxapplication/octet-stream 格式返回文件內(nèi)容。

此外為了能正確的計(jì)算相對(duì)路徑,在訪問(wèn)根路徑時(shí)如果不是以/結(jié)尾,都會(huì)觸發(fā)一個(gè) 301 跳轉(zhuǎn),在 URL 末尾加上一個(gè)/

不同語(yǔ)言的示例代碼

  • nodejs
  • python
  • php
  • java

已知問(wèn)題

  1. 文件大小限制
  2. fun local 實(shí)現(xiàn)存在已知問(wèn)題,上傳過(guò)大的文件會(huì)自動(dòng)退出,未來(lái)的版本會(huì)修復(fù)。
  3. 部署到線上需要綁定自定義域名才能使用,否則 HTML 文件在瀏覽器中會(huì)被強(qiáng)制下載而不是直接渲染。

“阿里巴巴云原生關(guān)注微服務(wù)、Serverless、容器、Service Mesh 等技術(shù)領(lǐng)域、聚焦云原生流行技術(shù)趨勢(shì)、云原生大規(guī)模的落地實(shí)踐,做最懂云原生開發(fā)者的技術(shù)圈?!?/p>


新聞名稱:輕松實(shí)現(xiàn)函數(shù)計(jì)算文件上傳下載
標(biāo)題路徑:http://weahome.cn/article/ghddjc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部