【问题标题】:File upload using cordova app not working on remote server使用cordova应用程序上传文件在远程服务器上不起作用
【发布时间】:2018-07-19 22:35:12
【问题描述】:

我正在尝试使用我的 cordova 应用上传文件。当我使用 localhost url 进行测试时,文件已成功上传。现在,当我尝试使用我的远程服务器时,它给了我以下错误。看起来它甚至没有点击上传网址

FileTransferError {代码:1,来源:“file:///storage/emulated/0/rec_13_13_11.wav”,目标:“https:///mobile_api/upload-hla-call-recording”,http_status:500,正文:空值, …} 正文:空 代码:1 例外:“https://route/to/upload/file” http_status:500 来源:“文件:///storage/emulated/0/rec_13_13_11.wav” 目标:“https://route/to/upload/file”

这是上传文件的代码

fileSystem.root.getDirectory(目录名,{ 创建:假 },函数(数据目录){ fileURI = dataDir.toURL(); 文件URI = 文件URI + 文件名; var options = new FileUploadOptions(); options.fileKey = "文件密钥"; options.fileName = fileURI.substr(fileURI.lastIndexOf('/') + 1); options.mimeType = "音频/mp3"; options.chunkedMode = false; var ft = new FileTransfer(); ft.upload(fileURI, server-url, win, fail, options, true); },目录失败);

我正在使用 cordova-plugin-file-transfer 上传文件

【问题讨论】:

  • HTTP Status Code 500 仅表示您的 PHP 代码有问题。
  • 是的,但相同的代码在我的本地主机上运行良好,文件正在正确上传。它显示远程服务器的此错误
  • 好吧,有了这么少的信息,我帮不上什么忙。如果可以,请提供更多信息。
  • 我添加了代码供参考@AmitMerchant
  • 你的服务器上真的存在<domain>/route/to/upload/file 路径吗?我的意思是在您的网络应用程序的文档根目录中?你检查过你的网络服务器的写权限吗?

标签: javascript php cordova file-transfer


【解决方案1】:

问题是关于 guzzlehttp。当我的本地主机在 http 上工作时,它正在寻找 https 连接。对 http 强制 curl 或在您的 http 请求中提供证书。

【讨论】:

    猜你喜欢
    • 2018-04-01
    • 2017-04-23
    • 1970-01-01
    • 1970-01-01
    • 2022-10-15
    • 2017-05-23
    • 2016-09-13
    • 2016-11-16
    • 1970-01-01
    相关资源
    最近更新 更多