php - PhoneGap Build API : CURL Command Line to PHP

标签 php cordova file-upload curl syntax-error

我正在使用PhoneGap Build API上传文件并创建其apk。您可以在这里检查https://build.phonegap.com/docs/write_api

我在使用php实现curl时遇到问题。命令行上的以下curl语句运行正常。

$ curl -F file=@/Users/alunny/index.html -u andrew.lunny@nitobi.com -F'data = {“title”:“API V1 App”,“package”:“com.alunny.apiv1 “,”版本“:” 0.1.0“,”创建方法“:”文件“}'https://build.phonegap.com/api/v1/apps

当我尝试使用php编写此代码时出现错误。我写了下面的代码。

$username = "email";
$password = "password";
$target_url = "https://build.phonegap.com/api/v1/apps";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $target_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
$post = array(
        "file"=>"@www.zip",
        "data"=>json_encode(array("title"=>"My Test App","package"=>"com.alunny.apiv1","version"=>"0.1.0","create_method"=>"file"))
    );
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");

$result = curl_exec($ch);
curl_close ($ch);

通过运行此代码,我收到此错误“未指定create_method:file,remote_repo或hosted_repo”

请帮助我解决这个问题。

谢谢

最佳答案

尝试shell_exec()函数:

$cmd = "https://build.phonegap.com/api/v1/apps";
$out = shell_exec($cmd);
$data = json_decode($out);

关于php - PhoneGap Build API : CURL Command Line to PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12272232/

相关文章:

php - javascript 和 php 中的功能相同,但输出不同

php - 警告 : preg_match() [function. 预匹配]:未知修饰符 '/'

java - 网页在 Cordova Android 应用程序中不可用

javascript - ionic 深度链接

javascript - 如何在网页中预览上传的视频

php - 用PHP读写excel文件

php - 如何使用 Codeigniter 2.2.6 设置药物过期 6 个月前的警报消息

javascript - 打开虚拟键盘时我的应用程序 webview 不会缩小?

asp.net-mvc - ASP.NET MVC 中的 HttpPostedFileBase 始终返回 null

android - 使用改造在服务器上上传文件