我搞乱了解析(parse.com),当我运行以下内容时,我收到致命错误。我正在运行的代码直接从parse.com介绍到PHP SDK。
我在Windows 10上运行XAMPP。
我是否需要通过https运行我的脚本,或者我真的在某处丢失了某些SSL证书?我如何让它工作?
错误:
Fatal error: Uncaught exception 'Parse\ParseException' with message 'SSL certificate problem: unable to get local issuer certificate' in C:\xampp\htdocs\project\assets\php\vendor\parse\php-sdk\src\Parse\ParseClient.php:284
Stack trace:
#0 C:\xampp\htdocs\project\assets\php\vendor\parse\php-sdk\src\Parse\ParseObject.php(1037): Parse\ParseClient::_request('POST', '/1/classes/Test...', NULL, '{"foo":"bar"}', false)
#1 C:\xampp\htdocs\project\assets\php\vendor\parse\php-sdk\src\Parse\ParseObject.php(947): Parse\ParseObject::deepSave(Object(Parse\ParseObject), false)
#2 C:\xampp\htdocs\project\assets\php\test.php(15): Parse\ParseObject->save()
#3 {main}
thrown in C:\xampp\htdocs\project\assets\php\vendor\parse\php-sdk\src\Parse\ParseClient.php on line 284

PHP片段:
require("./vendor/autoload.php");
use Parse\ParseClient;
ParseClient::initialize('secret', 'reallysecret', 'ubersecret');
use Parse\ParseObject;
$testObject = ParseObject::create("TestObject");
$testObject->set("foo", "bar");
$testObject->save();

答案 0 :(得分:5)
对此有许多重复的问题和一些略有不同的答案。
它不是parse.com问题,但您的本地PHP配置不正确。
一种是禁用curl
的SSL验证,这是不好的。
另一种是在php.ini
中设置正确的证书路径。
您可以将http://curl.haxx.se/ca/cacert.pem下载到cacert.pem文件。
在您的php.ini
集
curl.cainfo = "c:/youroflder/cacert.pem"
此cacert.pem文件不保证是安全的,但您可以使用不同的工具生成自己的文件。
有用的回答:How can I set CURLOPT_CAINFO globally for PHP on Windows?