Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有参数的PHP cURL POST Jenkins作业_Php_Windows_Curl_Jenkins_Php Curl - Fatal编程技术网

带有参数的PHP cURL POST Jenkins作业

带有参数的PHP cURL POST Jenkins作业,php,windows,curl,jenkins,php-curl,Php,Windows,Curl,Jenkins,Php Curl,通过以下PHP脚本触发Jenkins作业: <?php $testrun_id = "1744"; $cmd = "curl -X POST http://build:f9280f75396f83a0@mobile-jenkins.domain.com:8080/job/android-test/build --data-urlencode json='{\"parameter\": [{\"name\":\"POST_RESULTS\", \"value\":\"true\"}, {

通过以下
PHP
脚本触发
Jenkins作业

<?php

$testrun_id = "1744";
$cmd = "curl -X POST http://build:f9280f75396f83a0@mobile-jenkins.domain.com:8080/job/android-test/build --data-urlencode  json='{\"parameter\": [{\"name\":\"POST_RESULTS\", \"value\":\"true\"}, {\"name\":\"RUN_ID\", \"value\":\"{$testrun_id}\"}, {\"name\":\"CHECK_NAME\", \"value\":\"SampleAutomatedPlan\"}]}'";
exec($cmd,$result);

?>

您应该从这里查看示例

下面是你案子的代码

$url = "http://build:f9280f75396f83a0@mobile-jenkins.domain.com:8080/job/android-test/buildWithParameters";     
$data = "POST_RESULTS=true&RUN_ID=".$testrun_id."&CHECK_NAME=SampleAutomatedPlan";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);  
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 

// $output contains the output string
$output = curl_exec($ch);

// close curl resource to free up system resources
curl_close($ch);    

您应该在这里检查示例

下面是你案子的代码

$url = "http://build:f9280f75396f83a0@mobile-jenkins.domain.com:8080/job/android-test/buildWithParameters";     
$data = "POST_RESULTS=true&RUN_ID=".$testrun_id."&CHECK_NAME=SampleAutomatedPlan";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);  
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 

// $output contains the output string
$output = curl_exec($ch);

// close curl resource to free up system resources
curl_close($ch);    

您需要为JSON设置内容类型

curl -H "Content-Type: application/json" -X POST http://build:f9280f75396f83a0@mobile-jenkins.domain.com:8080/job/android-test/build --data-urlencode  json='{\"parameter\": [{\"name\":\"POST_RESULTS\", \"value\":\"true\"}, {\"name\":\"RUN_ID\", \"value\":\"{$testrun_id}\"}, {\"name\":\"CHECK_NAME\", \"value\":\"SampleAutomatedPlan\"}]}'";

只要确保没有任何混合匹配的值

您需要设置JSON的内容类型

curl -H "Content-Type: application/json" -X POST http://build:f9280f75396f83a0@mobile-jenkins.domain.com:8080/job/android-test/build --data-urlencode  json='{\"parameter\": [{\"name\":\"POST_RESULTS\", \"value\":\"true\"}, {\"name\":\"RUN_ID\", \"value\":\"{$testrun_id}\"}, {\"name\":\"CHECK_NAME\", \"value\":\"SampleAutomatedPlan\"}]}'";

只要确保没有任何混合匹配的值

我不知道如何传递curl命令中的参数,如json=…parameters和
--data urlcode
param这是一个使用json参数的调用。我更新了我的答案,以便使用POST传输数据,以及对于每一行
curl\u setopt
我都会收到以下错误:
警告:curl\u setopt()期望参数1是资源,如果给定为空
.nvm,我将所有
curl_setopt
的第一个参数固定为ch,而不是我们最初为curl init声明的
ch
。我不确定如何传递curl命令中的参数,如json=…参数和
--data urlencode
参数这是一个带有json参数的单一调用。我更新了我的回答您使用POST传输数据的问题,以及每个
curl\u setopt
行,我都会收到以下错误:
警告:curl\u setopt()希望参数1是资源,如果给定空值
.nvm,我将所有
curl\u setopt
的第一个参数固定为ch,而不是
curl
,因为我们最初为curl init声明
ch
我尝试了以下方法:
…-H\“Content-Type:application/json\”
,但没有帮助,我得到了以下结果:。另外,如果您查看上面dinesh的回答,我得到的是
警告:curl_setopt()期望参数1是resource,如果
则为null,我尝试了以下方法:
..-H\“Content Type:application/json\”
但没有帮助,我得到了以下结果:。另外,如果您查看上面dinesh的回答,我会得到
警告:curl_setopt()期望参数1是resource,如果给定空值