Php 通过GET-in-cURL简单地发布变量
所以我想在这里制作一个小API。我将只通过header(get params)发送一些信息,而不使用任何POST参数。 这是我写的代码Php 通过GET-in-cURL简单地发布变量,php,curl,Php,Curl,所以我想在这里制作一个小API。我将只通过header(get params)发送一些信息,而不使用任何POST参数。 这是我写的代码 function sendSMS($message, $number) { /*** Connection Params **/ /*** Build the request parameters ***/ $service="sms_api_call_receiver.php"; $number="1212"; $message="asas
function sendSMS($message, $number)
{
/*** Connection Params **/
/*** Build the request parameters ***/
$service="sms_api_call_receiver.php";
$number="1212";
$message="asas";
$result = sendPost("https://www.domain.com/smsapp/" . $service . "?message=".urlencode($message)."&number=".$number);
return $result;
}//function
function sendPost($Url)
{
// Initialisation
$ch=curl_init();
// Set parameters
curl_setopt($ch, CURLOPT_URL, $Url);
// Return a variable instead of posting it directly
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Active the POST method
//curl_setopt($ch, CURLOPT_POST, 1) ;
// Request
//curl_setopt($ch, CURLOPT_POSTFIELDS, $strRequest);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
// execute the connexion
$result = curl_exec($ch);
// Close it
//return curl_error($ch);
curl_close($ch);
return $result;
}
在接收方文件中,我有以下代码:-
if(isset($_GET['message']))
{
return true;
}
else
{
return "12212";
}
但当我测试时,我得到的输出是:-
string '' (length=0)
我做错了什么
故障排除
我试着看看curl\u error
是否返回了什么。但我什么也看不见。
这里的任何建议都会很有帮助。你确定那里出了问题吗?如果设置了
$\u GET['message']
(在您的测试示例中就是这样),脚本(sms\u api\u call\u receiver.php)将返回true并停止执行
因为它是HTTP请求,并且响应为空,所以您将在长度为0的函数字符串中得到结果。要在sendSMS中得到响应,您需要在sms\u api\u call\u receiver.php中打印,而不是使用return
var\u dump($\u get)
,请确保这些参数实际上都已通过。好的,如果我返回类似于的内容,请不要返回true,而是返回“Ok”
。我可以用0长度的字符串来代替吗?当然可以。无论您在那里打印什么,都将通过sendSMS()
传回。正确的方法是echo“ok”代码>。