swan.uploadFile

请参考使用注意事项swan.uploadFile - 图1进行开发。

解释:将本地资源上传到开发者服务器,客户端发起一个 HTTPS POST 请求,其中 content-typemultipart/form-data如页面通过 swan.chooseImage 等接口获取到一个本地资源的临时文件路径后,可通过此接口将本地资源上传到指定服务器。

方法参数

Object object

object参数说明 :

属性名类型必填默认值说明
urlString开发者服务器 url
filePathString要上传文件资源的路径
nameString文件对应的 key , 开发者在服务器端通过这个 key 可以获取到文件二进制内容。
headerObjectHTTP 请求 Header, header 中不能设置 Referer 。
formDataObjectHTTP 请求中其他额外的 form data
successFunction接口调用成功的回调函数
failFunction接口调用失败的回调函数
completeFunction接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数说明 :

参数类型说明
dataString开发者服务器返回的数据。
statusCodeNumber开发者服务器返回的 HTTP 状态码。

fail 返回值参数说明 :

  • Android
错误码说明
201解析失败,请检查调起协议是否合法
202解析失败,请检查参数是否正确
1001执行失败
  • iOS
错误码说明
202解析失败,请检查参数是否正确
1解析失败,请检查参数是否正确

示例

在开发者工具中预览效果

扫码体验

swan.uploadFile - 图2请使用百度APP扫码

图片示例

swan.uploadFile - 图3

swan.uploadFile - 图4

swan.uploadFile - 图5

代码示例

  1. Page({
  2. data: { },
  3. uploadfile() {
  4. swan.chooseImage({
  5. success: res => {
  6. swan.uploadFile({
  7. url: 'https://smartprogram.baidu.com/mappconsole/api/checkFile',
  8. filePath: res.tempFilePaths[0], // 要上传文件资源的路径
  9. name: 'myfile',
  10. header: {
  11. 'content-type': 'application/json'
  12. },
  13. formData: {
  14. 'user': 'swan'
  15. },
  16. success: res => {
  17. console.log(res.statusCode);
  18. },
  19. fail: err => {
  20. console.log('错误码:' + err.errCode);
  21. console.log('错误信息:' + err.errMsg);
  22. }
  23. });
  24. }
  25. });
  26. }
  27. });

返回值 :

返回一个uploadTask对象,通过uploadTask,可监听上传进度变化事件,以及取消上传任务。

Bug & Tip

uploadFile 上传文件大小限制为 25M。