We码小程序JSAPI上传
【摘要】 HWH5.uploadFile支持版本>=10.0.2扫码体验:上传文件请求参数参数类型必填说明serverUrlString是服务器地址,绝对路径formDataObject是自定义body中的其他数据,json结构。注意:无数据时,需传空值 {}filePathString是文件存放到本地的地址,包含文件名称及后缀zipBool否true:压缩后传,false:不压缩上传nameStri...
HWH5.uploadFile
扫码体验:
上传文件
请求参数
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
serverUrl | String | 是 | 服务器地址,绝对路径 |
formData | Object | 是 | 自定义body中的其他数据,json结构。注意:无数据时,需传空值 {} |
filePath | String | 是 | 文件存放到本地的地址,包含文件名称及后缀 |
zip | Bool | 否 | true:压缩后传,false:不压缩上传 |
name | String | 否 | 开发者在服务器端通过该key可以获取到文件二进制内容 |
headers | Object | 否 | 自定义的header信息 |
timeout | Number | 否 | 超时,单位毫秒。例如:6000毫秒=6秒 |
progress | Number | 否 | 是否返回上传进度。1:返回,0:不返回。默认为 0 |
onProgress | Function | 否 | 当progress为1时,必填。回调函数,持续回调 |
返回结果
无。
请求示例
ES6示例
const filePath = '/downloads/xxxx.asr';const _appId = 'com.xxx.xxx';const _appName = 'xxxxxx';const _userId = 'xxx'; HWH5.uploadFile({ zip: false, serverUrl: 'http://example.com/uploadFile', // 示例地址,非真实服务 filePath, name: 'voiceFile', headers: { 'X-HIC-info': `{"appId":${_appId},"appName":${_appName},"userId":${_userId}}` }, formData: { capKey: 'xxxxxx.xxxxxx', audioFormat: 'pcm16k16bit' }, timeout: 60000, progress: 1, onProgress: (_data) => { console.log(_data, '~~~data'); } }).then(data => { console.log('服务端返回数据:', data); }).catch(error => { console.log('HWH5.uploadFile上传异常', error); });
ES5示例
var filePath = '/downloads/xxxx.asr';var _appId = 'com.xxx.xxx';var _appName = 'xxxxxx';var _userId = 'xxx'; HWH5.uploadFile({ zip: false, serverUrl: 'http://example.com/uploadFile', // 示例地址,非真实服务 filePath: filePath, name: 'voiceFile', headers: { 'X-HIC-info': 'appId:' + _appId + ',appName:' + _appName + ',userId:' + _userId }, formData: { capKey: 'xxxxxx.xxxxxx', audioFormat: 'pcm16k16bit' }, timeout: 60000, progress: 1, onProgress: function (_data) { console.log(_data, '~~~data'); } }).then(function (data) { console.log('服务端返回数据:', data); }).catch(function (error) { console.log('HWH5.uploadFile上传异常', error); });
服务端接受(Spring boot)示例:
@SuppressWarnings("unchecked")@RequestMapping(value = "/xxx/xxxxxx", method = RequestMethod.POST)public @ResponseBody Map shortOutlineAsr( @RequestParam(name = "voiceFile") MultipartFile voiceFile, @RequestParam(name = "capKey") String capKey, @RequestParam(name = "audioFormat") String audioFormat, @RequestHeader(name = HisHeader.X_HIC_INFO) String hisInfo) { // 方法体 } )
HWH5.uploadFileOperation
扫码体验:
上传文件,支持取消上传
请求参数
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
serverUrl | String | 是 | 服务器地址,绝对路径 |
formData | Object | 是 | 自定义body中的其他数据,json结构。注意:无数据时,需传空值 {} |
filePath | String | 是 | 文件存放到本地的地址,包含文件名称及后缀 |
zip | Bool | 否 | true:压缩后传,false:不压缩上传 |
name | String | 否 | 开发者在服务器端通过该key可以获取到文件二进制内容 |
headers | Object | 否 | 自定义的header信息 |
timeout | Number | 否 | 超时,单位毫秒。例如:6000毫秒=6秒 |
progress | Number | 否 | 是否返回上传进度。1:返回,0:不返回。默认为 0 |
onProgress | Function | 否 | 当progress为1时,必填。回调函数,持续回调 |
onSuccess | Function | 否 | 上传成功后回调函数 |
replaceString | Function | 否 | 上传失败或是异常的回调函数 |
返回说明
参数 | 类型 | 说明 |
---|---|---|
abort | Function | 取消上传函数 |
ES6示例
const filePath = '/downloads/xxxx.asr';const _appId = 'com.huawei.xxx';const _appName = 'xxxxxx';const _userId = 'xxx';const uploadTask = await HWH5.uploadFileOperation({ serverUrl: '/mcloud/mag/ProxyForUpload/xxx/xxx/xxxxxx', // 示例地址,非真实服务 filePath, name: 'voiceFile', headers: { 'X-HIC-info': `{"appId":${_appId},"appName":${_appName},"userId":${_userId}}` }, formData: {}, timeout: 60000, progress: 1, onProgress: _data => console.log('进度', _data), onSuccess: res = > console.log('--------- success', res), replaceString: err => console.log('--------- error', err) }); uploadTask.abort(); //取消上传
ES5示例
var filePath = '/downloads/xxxx.asr';var _appId = 'com.huawei.xxx';var _appName = 'xxxxxx';var _userId = 'xxx'; HWH5.uploadFile({ serverUrl: '/mcloud/mag/ProxyForUpload/xxx/xxx/xxxxxx', // 示例地址,非真实服务 filePath: filePath, name: 'voiceFile', headers: { 'X-HIC-info': 'appId:' + _appId + ',appName:' + _appName + ',userId:' + _userId }, formData: {}, timeout: 60000, progress: 1, onProgress: function (_data) { console.log('进度', _data); }, onSuccess: function (res) { console.log('--------- success', res); }, replaceString: function (err) { console.log('--------- error', err); } }).then(function (uploadTask) { uploadTask.abort(); // 取消上传})
HWH5.downloadFile
扫码体验:
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)