簡體   English   中英

用於圖像上傳的 Cordova FileTransfer 插件錯誤代碼 1

[英]Cordova FileTransfer Plugin error code 1 for image upload

我正在嘗試在我的 phonegap 應用程序上拍照,然后使用 FileTransfer 插件將其上傳到我的服務器。 我收到錯誤代碼 1,但沒有其他解釋 - 這非常令人沮喪。 我已經在沒有運氣的情況下搜索了人類所知道的每一份文檔和博客。

我正在使用一個基本的 LAMP 服務器,它繼續給我一個 http 500 代碼。 我 99.9% 確定此錯誤特定於我的服務器,因為我已經使用我的不同 Web 服務器對此進行了測試,並且代碼運行良好。 這是回應:

{"code":1,"source":"file:///storage/emulated/0/Android/data/io.cordova.xxappxx/cache/1477607161788.jpg","target":"https://server.com/php/uploadPhoto.php","http_status":500,"body":"\t","exception":"https://server.com/php/uploadPhoto.php"}

下面是我的前端js代碼:

function uploadPhoto(imageURI) {
    var options = new FileUploadOptions();
    options.fileKey="file";
    options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
    alert(options.fileName);
    options.mimeType="image/jpeg";

    var params = {};
    params.value1 = sessionStorage.getItem("token");
    options.params = params;
    options.chunkedMode = false;
    options.headers = {Connection: "close"};

    var ft = new FileTransfer();
    ft.upload(imageURI, "https://servername.com/php/uploadPhoto.php", function(result){
    console.log(JSON.stringify(result));
    }, function(error){
    console.log(JSON.stringify(error));
    }, options, true);
}

這是我正在調用的后端 PHP 代碼 (uploadPhoto.php):

<?php
session_start();
header('Access-Control-Allow-Origin : *');
$new_image_name = "$userId.jpg";
move_uploaded_file($_FILES["file"]["tmp_name"], "/var/img/".$new_image_name);
?>

這最終成為圖像大小的問題。 我正在為一所大學開展這個項目,他們的服務器安裝了很多安全措施——其中一個安全配置有一個非常小的文件上傳大小限制,這阻止了上傳。 我通過掃描/var/log/目錄中的一些日志文件發現了這一點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM