Android 如何使用phonegap在django服务器中上载文件?

Android 如何使用phonegap在django服务器中上载文件?,android,python,django,cordova,Android,Python,Django,Cordova,这是我的phonegapfile文件:该文件正在向django服务器发送数据,但我无法将该文件存储在服务器中。python视图用于捕获和存储该文件的功能是什么 <!DOCTYPE HTML> <html> <head> <title>File Transfer Example</title> <script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"

这是我的phonegapfile文件:该文件正在向django服务器发送数据,但我无法将该文件存储在服务器中。python视图用于捕获和存储该文件的功能是什么

<!DOCTYPE HTML>
<html>
<head>
<title>File Transfer Example</title>

<script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
<script type="text/javascript" charset="utf-8">

// Wait for Cordova to load
//
document.addEventListener("deviceready", onDeviceReady, false);

// Cordova is ready
//
function onDeviceReady() {

    // Retrieve image file location from specified source
navigator.camera.getPicture(uploadPhoto,
function(message) {
    alert('get picture failed');},
    { quality: 50, 
    destinationType: navigator.camera.DestinationType.FILE_URI,
    sourceType: navigator.camera.PictureSourceType.PHOTOLIBRARY }
);

}

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

    var params = {};
    params.value1 = "test";
    params.value2 = "param";

    options.params = params;

    var ft = new FileTransfer();
    ft.upload(imageURI, encodeURI("http://something.com/uploadphonegapfil/"),win,fail,options);
}

function win(r) {
    console.log("Code = " + r.responseCode);
    console.log("Response = " + r.response);
    console.log("Sent = " + r.bytesSent);
}

function fail(error) {
    alert("An error has occurred: Code = " + error.code);
    console.log("upload error source " + error.source);
    console.log("upload error target " + error.target);
}
</script>
</head>
<body>
<h1>Example</h1>
<p>Upload File</p>
</body>
</html>
那个上传请求击中了服务器,我得到了打印结果“------------击中了url” 那么我怎样才能在这里找到文件呢?
或者,如果您使用JQuery使用POST将文件发送到服务器,而不是使用
request.FILES['file']
代替
request.POST[]
,是否有任何方法将文件存储在我的服务器文件夹中

if request.method == 'POST':
    filename=request.FILES['file']
    form = SomeForm(request.POST, request.FILES)
    if form.is_valid():
        dest_file = open('C:/system/upload/'+ str(filename), 'wb+')
        path = 'C:/system/upload/upload/'+ str(filename)
        for chunk in  request.FILES['file'].chunks():
            dest_file.write(chunk)
        dest_file.close()

我建议深入调试器:只需添加“importpdb”;在print语句和to_json语句之间设置_trace()。用“/manage.py runserver”启动django服务器,上传文件,您的终端上就会有一个很好的调试器,您可以在那里检查诸如“dir(request)”等内容。
if request.method == 'POST':
    filename=request.FILES['file']
    form = SomeForm(request.POST, request.FILES)
    if form.is_valid():
        dest_file = open('C:/system/upload/'+ str(filename), 'wb+')
        path = 'C:/system/upload/upload/'+ str(filename)
        for chunk in  request.FILES['file'].chunks():
            dest_file.write(chunk)
        dest_file.close()