java byte nodejs_Nodejs:Path必须是没有空字节的字符串

我正在尝试将视频上传到kaltura,但它显示如下错误

Uploading file

file path /home/alok/Downloads/video.mp4

true

upload token added {"id":"######","partnerId":####,"userId":"######","status":0,"createdAt":1467038066,"updatedAt":1467038066,"objectType":"KalturaUploadToken"}

{

"date": "Mon Jun 27 2016 20:04:16 GMT+0530 (IST)",

"process": {

"pid": 13534,

"uid": 1001,

"gid": 1001,

"cwd": "/home/alok/Desktop/projects/myproject",

"execPath": "/usr/local/nodejs/bin/node",

"version": "v4.4.5",

"argv": [

"/usr/local/nodejs/bin/node",

"/home/alok/Desktop/projects/myproject/app.js"

],

"memoryUsage": {

"rss": 85884928,

"heapTotal": 77003616,

"heapUsed": 52299120

}

},

"os": {

"loadavg": [

1.21826171875,

1.08837890625,

0.89111328125

],

"uptime": 31013

},

"trace": [

{

"column": 14,

"file": "fs.js",

"function": "nullCheck",

"line": 94,

"method": null,

"native": false

},

{

"column": 3,

"file": "fs.js",

"function": "Object.fs.openSync",

"line": 548,

"method": "fs.openSync",

"native": false

},

{

"column": 15,

"file": "fs.js",

"function": "Object.fs.readFileSync",

"line": 397,

"method": "fs.readFileSync",

"native": false

},

{

"column": 18,

"file": "/home/alok/Desktop/projects/myproject/node_modules/kaltura/KalturaClientBase.js",

"function": "KalturaClientBase.doHttpRequest",

"line": 433,

"method": "doHttpRequest",

"native": false

},

{

"column": 7,

"file": "/home/alok/Desktop/projects/myproject/node_modules/kaltura/KalturaClientBase.js",

"function": "KalturaClientBase.doQueue",

"line": 336,

"method": "doQueue",

"native": false

},

{

"column": 15,

"file": "/home/alok/Desktop/projects/myproject/node_modules/kaltura/KalturaServices.js",

"function": "KalturaUploadTokenService.upload",

"line": 7120,

"method": "upload",

"native": false

},

{

"column": 47,

"file": "/home/alok/Desktop/projects/myproject/application/services/project/projectService.js",

"function": null,

"line": 50,

"method": null,

"native": false

},

{

"column": 4,

"file": "/home/alok/Desktop/projects/myproject/node_modules/kaltura/KalturaClientBase.js",

"function": "",

"line": 389,

"method": null,

"native": false

},

{

"column": 20,

"file": "events.js",

"function": "emitNone",

"line": 72,

"method": null,

"native": false

},

{

"column": 7,

"file": "events.js",

"function": "IncomingMessage.emit",

"line": 166,

"method": "emit",

"native": false

},

{

"column": 12,

"file": "_stream_readable.js",

"function": "endReadableNT",

"line": 913,

"method": null,

"native": false

},

{

"column": 9,

"file": "node.js",

"function": "nextTickCallbackWith2Args",

"line": 442,

"method": null,

"native": false

},

{

"column": 17,

"file": "node.js",

"function": "process._tickCallback",

"line": 356,

"method": "_tickCallback",

"native": false

}

],

"stack": [

"Error: Path must be a string without null bytes.",

" at nullCheck (fs.js:94:14)",

" at Object.fs.openSync (fs.js:548:3)",

" at Object.fs.readFileSync (fs.js:397:15)",

" at KalturaClientBase.doHttpRequest (/home/alok/Desktop/projects/myproject/node_modules/kaltura/KalturaClientBase.js:433:18)",

" at KalturaClientBase.doQueue (/home/alok/Desktop/projects/myproject/node_modules/kaltura/KalturaClientBase.js:336:7)",

" at KalturaUploadTokenService.upload (/home/alok/Desktop/projects/myproject/node_modules/kaltura/KalturaServices.js:7120:15)",

" at /home/alok/Desktop/projects/myproject/application/services/project/projectService.js:50:47",

" at IncomingMessage. (/home/alok/Desktop/projects/myproject/node_modules/kaltura/KalturaClientBase.js:389:4)",

" at emitNone (events.js:72:20)",

" at IncomingMessage.emit (events.js:166:7)",

" at endReadableNT (_stream_readable.js:913:12)",

" at nextTickCallbackWith2Args (node.js:442:9)",

" at process._tickCallback (node.js:356:17)"

],

"level": "error",

"message": "uncaughtException: Path must be a string without null bytes."

}

我认为fs读取存在问题,即使文件在指定的路径上也存在 .

在kaltura上传文件

var KalturaConstants = require('./KalturaTypes.js');

var Kaltura = require('./KalturaClient.js');

var KalturaClient = null;

var Session = null;

var pager = new Kaltura.objects.KalturaFilterPager();

pager.pageSize=10000;

pager.pageIndex=1;

var KALTURA_PARTNERID="#####";

var KALTURA_ADMINSECRET="##################";

var KALTURA_USERID="####";

var initialize = function(callback) {

var config = new Kaltura.KalturaConfiguration(parseInt(KALTURA_PARTNERID));

KalturaClient = new Kaltura.KalturaClient(config);

KalturaClient.session.start(function(session) {

KalturaClient.setKs(session);

Session = session;

callback();

}, KALTURA_ADMINSECRET, KALTURA_USERID, KalturaConstants.KalturaSessionType.ADMIN,

parseInt(KALTURA_PARTNERID), '10000000');

}

var uploadMedia = function(videoFile,userId) {

var fs = require("fs");

var DOWNLOAD_DIR = './downloads/';

var fileWithPath=DOWNLOAD_DIR+videoFile;

fs.exists(fileWithPath, function(exists) {

if (exists) {

fs.readFile(fileWithPath, "utf8", function(error, data) {

var uploadToken = null;

KalturaClient.uploadToken.add(function(token){

console.log("upload token added " + JSON.stringify(token));

KalturaClient.uploadToken.upload(function(token){

console.log("upload token uploaded " + JSON.stringify(token));

var entry = new Kaltura.objects.KalturaMediaEntry();

entry.name = "My Video";

entry.description = "My video";

entry.userId = userId;

entry.creatorId = userId;

entry.type = KalturaConstants.KalturaEntryType.AUTOMATIC;

entry.mediaType = KalturaConstants.KalturaMediaType.VIDEO;

entry.sourceType = KalturaConstants.KalturaSourceType.FILE;

KalturaClient.media.add(function(result){

console.log("media entry added " + JSON.stringify(result));

var resource = new Kaltura.objects.KalturaUploadedFileTokenResource();

resource.token = token.id;

KalturaClient.media.addContent(function(result2){

//if(err) console.log('Failed to add content ' + JSON.stringify(err));

console.log("media entry updated with content " + JSON.stringify(result2));

}, result.id, resource);

},entry);

},token.id,data);

}, uploadToken);

});

}

});

}

initialize(function () {

console.log('Uploading file');

uploadMedia('main_OUTPUT.tmp.mp4',1901);

});

请帮忙,我是node.js的新手 .

谢谢

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值