1

PHP でベッティング ボットを作成していますが、ベッティング ハウスでは、自動接続のために送信される SSL 証明書が必要です。

使用するすべての種類の自己署名証明書があります: cert.crt、cert.pem、cert.p12、およびキーcert.keyで、curl を使用してログイン接続を確立していますが、うまくいかないようです接続に適したcurlパラメーターを取得します。

次のコマンド ラインを使用すると、正常に接続を確立できます。

curl -q -k --cert cert.crt --key cert.key https://api.domain.com/certificatelogin/endpoint -d "username=UUUUUUU&password=XXXXXXX" -H "X-Application: appKey"

そして、これも機能します:

curl -q -k --cert cert.pem https://api.domain.com/certificatelogin/endpoint -d "username=UUUUUUU&password=XXXXXXX" -H "X-Application: appKey"

私が現在使用しているPHPコードは次のとおりです。

$ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "https://api.domain.com/certificatelogin/endpoint");
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array(
        'X-Application: ' . $appKey,
        'Accept: */*',
        'Content-Type: application/x-www-form-urlencoded'
    ));
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($ch, CURLOPT_SSLCERT, "path/to/cert/cert.pem");

    $postData = 'username=UUUUUUUUU&password=XXXXXXXXXXX';

    curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);

    $response = json_decode(curl_exec($ch));
    echo 'Response: ' . json_encode($response);

そして、 .crt.keyとの非常に多くの組み合わせを試した後、何も機能しないようです。

どんな助けでも大歓迎です。:)

4

0 に答える 0