将http移至wordpress第三方API的https后无法正常工作

时间:2019-04-10 05:38:30

标签: wordpress woocommerce amazon-cognito custom-theme

我已经使用Aws cognito在Java的worpress中实现了sigle登录。

使用http可以正常工作,但是将http移到https之后。 API不起作用,并在下面抛出错误:

WP_Error Object
(
    [errors] => Array
        (
            [http_request_failed] => Array
                (
                    [0] => cURL error 35: error:1408F10B:SSL routines:ssl3_get_record:wrong version number
                )

        )

    [error_data] => Array
        (
        )

)

我已经消耗了get和Post API,如下所示:

$bodyData = array(
      'username' => $_POST['username'],
      'password' => $_POST['password']
      );
   $response = wp_remote_post('https://example.com:8083/digitalIdentityProvider/login', 
               array(
                  'method' => 'POST',
                  'timeout' => 45,
                  'redirection' => 5,
                  'httpversion' => '2.0',
                  'sslverify'   => true,
                  'blocking' => true,
                  'headers' => array('Content-Type'=> 'application/json'),
                  'body' => json_encode($bodyData) ,
                  'cookies' => array()
                  ));

可以请人指导或建议吗? 谢谢。

1 个答案:

答案 0 :(得分:0)

在使用wordpress代码和AWS之后,我发现了Aws ELB和Load Balancer的问题。

SSL证书已应用于LB,并且第三方API和wordpress托管在AWS ELB上,而对于ELB则没有SSL证书,我正尝试使用 HTTPS:

https://example.com:8083/digitalIdentityProvider/login因此请求未在那边验证,因此我没有收到来自API的任何响应。

我已更改API调用

来自https://example.com:8083/digitalIdentityProvider/login

https://example.com:8083/digitalIdentityProvider/login

将https更改为http后。工作正常。