Javasctipt将函数中的post函数转换为PHP函数。发布到Web服务
我被要求将下面的Javascript函数转换为PHP函数 我以前从未被要求做过类似的事情,因此一直在努力,可能与SOAP/WebService等相关的所有术语都是错误的,因此我为任何混淆表示歉意Javasctipt将函数中的post函数转换为PHP函数。发布到Web服务,php,web-services,curl,soap,Php,Web Services,Curl,Soap,我被要求将下面的Javascript函数转换为PHP函数 我以前从未被要求做过类似的事情,因此一直在努力,可能与SOAP/WebService等相关的所有术语都是错误的,因此我为任何混淆表示歉意 var varValidationCode = "VALIDATIONCODE"; var Email = document.getElementById('Email').value; //alert(Email); $.ajax
var varValidationCode = "VALIDATIONCODE";
var Email = document.getElementById('Email').value;
//alert(Email);
$.ajax(
{
url: 'http://www.DOMAIN.com/FILE.asmx',
type: "POST",
data: "{Email:'" + Email + "',ValidationCode:'" + varValidationCode + "'}",
dataType: "json",
contentType: "application/json; charset=utf-8",
cache: false,
success: function(data) {
alert(data.d);
},
error: function() {
alert("FAIL");
}
});
//alert("Function Called Successfully");
}
我试图创建一个curl函数来发布如下值,这是我在stackoverflow上的另一篇文章中得到的,但我得到了错误——“soap:ReceiverServer无法处理请求。-->根级别的数据无效。第1行,位置1。”
我要发布到的文件如下所示:
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="htt{://www.w3.org/2001/XMLSchema-instance" xmlns:xds="http://www.w3.org/2001/XMLSchema" xmlns:xds="http://www.w3.org/2001/05/soap-envelope">
<soap:Body>
<PaymentValidationInfo xmlns="http://tempuri.org/">
<Email>STRING</Email>
<ValidationCode>STRING</ValidationCode>
</PaymentValidationInfo>
<soap12:Body>
</soap12:Envelope>
一串
一串
我希望这一切都有意义。
任何帮助都将不胜感激。
关于我不确定人们是否感兴趣,但我设法通过以下方式实现了我想要的工作
$url = "http://www.domain.com/WebServices/CCPWebService.asmx/METHOD?";
$data = array(
'Email' => 'EMAIL',
'&ValidationCode' => '4946565',
);
foreach($data as $key=>$value) { $content .= $key.'='.$value; }
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $content);
$json_response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
/* FOR DEBUG PURPOSES
if(!curl_errno($curl))
{
$info = curl_getinfo($curl);
echo 'Took ' . $info['total_time'] . ' seconds to send a request to ' . $info['url'].'<br/><br/>';
echo "CURL ERROR NO : ".curl_errno($curl); //returns 7
echo "<br />CURL STATUS : ".curl_getinfo($curl, CURLINFO_HTTP_CODE); //returns 0
echo "<br />CURL ERROR : ".curl_error($curl); //returns "couldn't connect to host"
echo "<br />STRINGS POSTED: ";print_r($content);
echo "<br />CURL INFO : ";print_r($info);
}*/
curl_close($curl);
$url=”http://www.domain.com/WebServices/CCPWebService.asmx/METHOD?";
$data=数组(
“电子邮件”=>“电子邮件”,
“&ValidationCode”=>“4946565”,
);
foreach($key=>$value形式的数据){$content.=$key.'='.$value;}
$curl=curl\u init($url);
curl_setopt($curl,CURLOPT_头,false);
curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl,CURLOPT_POST,true);
curl_setopt($curl,CURLOPT_POSTFIELDS,$content);
$json\u response=curl\u exec($curl);
$status=curl\u getinfo($curl,CURLINFO\u HTTP\u代码);
/*用于调试目的
如果(!curl_errno($curl))
{
$info=curl\u getinfo($curl);
echo以“$info['total_time']”秒的时间将请求发送到“$info['url']”。
;
echo“CURL ERROR NO:”.CURL_errno($CURL);//返回7
echo“
CURL STATUS:”.CURL\u getinfo($CURL,CURLINFO\u HTTP\u CODE);//返回0
echo“
CURL ERROR:”.CURL_ERROR($CURL);//返回“无法连接到主机”
echo“
发布的字符串:”;打印($content);
echo“
卷曲信息:”;打印($INFO);
}*/
curl_close($curl);
如果有人能推荐任何补充/最佳实践,我们将不胜感激。
问候
$url = "http://www.domain.com/WebServices/CCPWebService.asmx/METHOD?";
$data = array(
'Email' => 'EMAIL',
'&ValidationCode' => '4946565',
);
foreach($data as $key=>$value) { $content .= $key.'='.$value; }
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $content);
$json_response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
/* FOR DEBUG PURPOSES
if(!curl_errno($curl))
{
$info = curl_getinfo($curl);
echo 'Took ' . $info['total_time'] . ' seconds to send a request to ' . $info['url'].'<br/><br/>';
echo "CURL ERROR NO : ".curl_errno($curl); //returns 7
echo "<br />CURL STATUS : ".curl_getinfo($curl, CURLINFO_HTTP_CODE); //returns 0
echo "<br />CURL ERROR : ".curl_error($curl); //returns "couldn't connect to host"
echo "<br />STRINGS POSTED: ";print_r($content);
echo "<br />CURL INFO : ";print_r($info);
}*/
curl_close($curl);