ftpServer

来自于:开发者 立即使用

概述

使用本模块,可在移动端创建一个 FTP 服务器,在同一局域网(Wi-Fi)内的 PC 端通过资源管理器即可访问,可实现移动端和 PC 端文件交换的功能。注意在 MC 系统下的 Finder,只能下载,无法上传,必须使用相关 FTP 小工具才能实现上传。

注意:在 iOS 端,APP 切到后台(运行时按下 home 键),该 APP 会被挂起,此时 FTP 服务器也不可访问。

startFtp

开启ftp服务,开启成功后在电脑端文件资源管理器输入ftp://ip:端口号即可访问手机分享文件。需要开启存储权限。

startFtp({params}, callback(ret, err))

parameter

filePath:

  • 类型:字符串
  • 描述:(可选项)要共享的目录,要求本地路径(fs://)
  • 默认:fs://

port:

  • 类型:数字
  • 描述:(可选项)端口号,暂仅支持 iOS 端
  • 默认:2121

account:

  • 类型:JSON 对象
  • 描述:(可选项)配置访问账号,暂仅支持 iOS 端
  • 注意:本参数不传,表示允许匿名访问,若传则表示不支持匿名访问
  • 默认:见内部字段
  • 内部字段:
{
   name:'',        //(可选项)字符串类型;账号;默认:APICloud
   password:''     //(可选性)字符串类型;密码;默认:APICloud
}

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true,          //布尔型;是否成功
    ip:'',                 //字符串类型;设备ip
    port:,                 //数字类型;ftp端口号
    path:''                //字符串类型;共享的绝对路径,暂仅支持 iOS 端
}

err:

  • 类型:JSON 对象
  • 内部字段:
{

    msg: ''               //字符串类型;错误信息
}

示例代码

var ftpServer = api.require('ftpServer');
ftpServer.startFtp({
    filePath:'fs://',
    port:8888,
    account:{
        name:'APICloud',
        password:'APICloud',
    }
}, function(ret, err) {
    if (ret.status) {
        api.alert({msg:JSON.stringify(ret)});
    } else {
        api.alert({msg:JSON.stringify(err)});
    }
});

可用性

Android系统,iOS系统

可提供的 1.0.0 及更高版本

stopFtp

关闭ftp服务。

stopFtp({params}, callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true       //布尔型;是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{

    msg: ‘’,           //字符串类型;错误信息
}

示例代码

var ftpServer = api.require('ftpServer');
ftpServer.stopFtp(function(ret, err) {
    if (ret.status) {
        api.alert({msg:JSON.stringify(ret)});
    } else {
        api.alert({msg:JSON.stringify(err)});
    }
});

可用性

Android系统,iOS系统

可提供的 1.0.0 及更高版本