我今天刚从Cordova(PhoneGap)1.5升级到1.9,突然我的FileTransfer params停止了发布。我可以告诉,因为我有服务器端调试$ _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);”。仍然没有结果。我能够欺骗并将URL上的客户端令牌作为$ _GET参数抛出,但是由于客户端发生了变化,因此破解服务器端似乎是一种耻辱。
答案 0 :(得分:4)
我对iOS Cordova 1.9也有同样的问题。我发现并修复了框架代码中的错误,你可以下载我的Cordova分支并使用新修补的/dist/Cordova-1.9.0.dmg:https://github.com/eschultz/incubator-cordova-ios/
快速浏览Android Cordova 1.9代码看起来很不错。我将更改提交给Apache,以便在下一个版本中包含修复程序。
希望这有帮助。