再一次,我需要你的帮助。我的客户希望使用 REST 服务器进行一些数据加密。我在 Python 中获得了一个有效的代码片段。(我不了解 Python,所以我会相信他的话)。我需要让它在 PHP 中工作。
注意:我使用的是 Windows 和 XAMPP,因此如果您考虑到这一点,我们将不胜感激。REST 服务器也不是真正的服务器,我不想公开。
我是使用 cURL 的新手,所以不确定我缺少什么来使它工作。现在我有一个错误指出:“无法解析主机:en.tty.is;没有请求类型的数据记录”。
这是Python代码:
input = urllib.urlencode({‘plaintext’: ‘some secret information’})
cyphertext = urllib2.urlopen(‘https://en.tty.is/encrypt’, input).read()
这是我一直试图在 PHP 中使用 cURL 7.24.0 实现的目标:
$url ="https://en.tty.is/encrypt";
$data = json_encode(array('plaintext'=>$txt));
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt ($ch, CURLOPT_CAINFO, MY_CAINFO_PATH);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
$chleadresult = curl_exec($ch);
$chleadapierr = curl_errno($ch);
$chleaderrmsg = curl_error($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if(!$chleadresult){
echo $chleaderrmsg;die;
}
非常感谢任何帮助。谢谢!