fsd-vod 0.9.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/lib/index.js +8 -13
- package/package.json +7 -7
package/README.md
CHANGED
package/lib/index.js
CHANGED
|
@@ -4,7 +4,6 @@ const OSS = require("ali-oss");
|
|
|
4
4
|
const LRUCache = require("lru-cache");
|
|
5
5
|
const Debugger = require("debug");
|
|
6
6
|
const RPC = require("@alicloud/pop-core");
|
|
7
|
-
const url_1 = require("url");
|
|
8
7
|
const stream_1 = require("stream");
|
|
9
8
|
const akita_1 = require("akita");
|
|
10
9
|
const debug = Debugger('fsd-vod');
|
|
@@ -205,23 +204,22 @@ class VODAdapter {
|
|
|
205
204
|
debug('initMultipartUpload %s, partCount: %d', videoId, partCount);
|
|
206
205
|
let token = await this.createUploadTokenWithAutoRefresh(videoId);
|
|
207
206
|
let oss = new OSS(token.auth);
|
|
208
|
-
let res = await oss.initMultipartUpload(token.path.
|
|
207
|
+
let res = await oss.initMultipartUpload(token.path.substring(1));
|
|
209
208
|
let { uploadId } = res;
|
|
210
209
|
let files = [];
|
|
211
210
|
for (let i = 1; i <= partCount; i += 1) {
|
|
212
|
-
files.push(`task://${uploadId}
|
|
211
|
+
files.push(`task://${uploadId}?${i}`);
|
|
213
212
|
}
|
|
214
213
|
return files;
|
|
215
214
|
}
|
|
216
215
|
async writePart(videoId, partTask, data, size) {
|
|
217
216
|
debug('writePart %s, task: %s', videoId, partTask);
|
|
217
|
+
if (!partTask.startsWith('task://'))
|
|
218
|
+
throw new Error('Invalid part task id');
|
|
218
219
|
let token = await this.createUploadTokenWithAutoRefresh(videoId);
|
|
219
220
|
let oss = new OSS(token.auth);
|
|
220
|
-
let
|
|
221
|
-
|
|
222
|
-
throw new Error('Invalid part pathname');
|
|
223
|
-
let uploadId = (info.hostname || '').toUpperCase();
|
|
224
|
-
let res = await oss._uploadPart(token.path.substr(1), uploadId, info.search.substr(1), {
|
|
221
|
+
let [uploadId, no] = partTask.replace('task://', '').split('?');
|
|
222
|
+
let res = await oss._uploadPart(token.path.substring(1), uploadId, parseInt(no), {
|
|
225
223
|
stream: data,
|
|
226
224
|
size
|
|
227
225
|
});
|
|
@@ -232,16 +230,13 @@ class VODAdapter {
|
|
|
232
230
|
debug('completeMultipartUpload %s', videoId);
|
|
233
231
|
let token = await this.createUploadTokenWithAutoRefresh(videoId);
|
|
234
232
|
let oss = new OSS(token.auth);
|
|
235
|
-
let
|
|
236
|
-
if (!info.pathname || info.pathname !== token.path)
|
|
237
|
-
throw new Error('Invalid part pathname');
|
|
238
|
-
let uploadId = (info.hostname || '').toUpperCase();
|
|
233
|
+
let uploadId = parts[0].replace('part://', '').split('?')[0];
|
|
239
234
|
debug('update id: %s, target: %s', uploadId, token.path);
|
|
240
235
|
let datas = parts.map((item, key) => ({
|
|
241
236
|
etag: item.split('#')[1],
|
|
242
237
|
number: key + 1
|
|
243
238
|
}));
|
|
244
|
-
await oss.completeMultipartUpload(token.path.
|
|
239
|
+
await oss.completeMultipartUpload(token.path.substring(1), uploadId, datas);
|
|
245
240
|
}
|
|
246
241
|
async createUrl(videoId, options) {
|
|
247
242
|
debug('createUrl %s', videoId);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fsd-vod",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"description": "Aliyun OSS adapter for fsd",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -8,15 +8,15 @@
|
|
|
8
8
|
"build": "tsc",
|
|
9
9
|
"prepublish": "npm run build"
|
|
10
10
|
},
|
|
11
|
-
"repository": "https://github.com/
|
|
12
|
-
"author": "Liang <liang@
|
|
11
|
+
"repository": "https://github.com/liangxingchen/fsd/tree/master/packages/fsd-vod",
|
|
12
|
+
"author": "Liang <liang@miaomo.cc> (https://github.com/liangxingchen)",
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"@alicloud/pop-core": "^1.7.10",
|
|
16
|
-
"akita": "^0.12.
|
|
17
|
-
"ali-oss": "^6.
|
|
18
|
-
"debug": "^4.3.
|
|
16
|
+
"akita": "^0.12.1",
|
|
17
|
+
"ali-oss": "^6.17.1",
|
|
18
|
+
"debug": "^4.3.4",
|
|
19
19
|
"lru-cache": "^6.0.0"
|
|
20
20
|
},
|
|
21
|
-
"gitHead": "
|
|
21
|
+
"gitHead": "9820fd7263b6791a38e5568396bfac0f2d3e37e9"
|
|
22
22
|
}
|