我今天刚刚从 Cordova (PhoneGap) 1.5 升级到 1.9,突然我的 FileTransfer 参数停止发布。我可以说出来,因为我让服务器端调试了 $_POST 参数,它们现在是空白的。这是正在运行的代码:
var options = new FileUploadOptions();
options.fileKey="file";
options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
options.mimeType="image/jpeg";
options.chunkedMode=false;
var params = new Object();
params.client_token = "This will not make it across, sadly...";
options.params = params;
var ft = new FileTransfer();
rs = ft.upload(imageURI, "http://www.mysite.com/api/uploadimage",
function() { alert('Yay!'); },
function() { alert('Fail happens..'); }, options, true);
这有发生在其他人身上吗?也许有一个必须设置的新设置?
更新:
为了确保不是 CodeIgniter 导致服务器端问题,我现在将上述代码发布到 echo.php,它只是执行“print var_dump($_REQUEST);”。仍然没有结果。我能够作弊并将客户端令牌作为 $_GET 参数扔到 URL 上,但是由于客户端发生了变化,因此破解服务器端似乎是一种耻辱。