【问题标题】:Add PEM certificate to Http Request using AngularJS/NodeJS使用 AngularJS/NodeJS 将 PEM 证书添加到 Http 请求
【发布时间】:2014-10-15 16:16:33
【问题描述】:

我目前正在开发一个应用程序,该应用程序需要从位于加密网络中的 REST 端点获取数据。要访问网络中的数据,我需要亲自到那里(目前不可能)或使用提供给我的 PEM 证书来访问网络中的数据。

我使用 node 作为我的应用程序的后端,使用 AngularJS 作为前端。

我的 HTTPS 请求是在前端使用 restangular 完成的,因为我只需要从位于加密网络的 REST 端点读取数据。

tl;博士

我的问题是:如何使用 pem 证书使用 angular/restangular 执行 HTTPS POST 请求?以前在 PHP 上我所做的是调用 curl,但这与我上面讨论的不同。我很久以前就用过这样的PHP:

function request($endpoint){
    $cert = 'certificate.pem';
    $curl = curl_init();
    $options = array( 
        CURLOPT_RETURNTRANSFER => 1,
        CURLOPT_FOLLOWLOCATION => 1,
        CURLOPT_SSL_VERIFYHOST => 0,
        CURLOPT_SSL_VERIFYPEER => 0,
        CURLOPT_URL            => $endpoint,
        CURLOPT_SSLCERT        => $cert,
        CURLOPT_SSLCERTPASSWD  => $_SESSION['...'] ,
    );
    curl_setopt_array($curl , $options);
    return curl_exec($curl);
}

【问题讨论】:

    标签: javascript node.js angularjs https restangular


    【解决方案1】:

    您必须在后端执行此操作,因为这种功能实际上并不存在于前端。

    如果该后端是节点,那么您只需使用https.request() 并适当设置keycertca(或只是pfx)属性。

    【讨论】:

    • 这种情况是否仍然存在,或者是否有任何选项可以在前端层本身处理这种情况?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-20
    • 1970-01-01
    • 2017-10-16
    • 1970-01-01
    • 1970-01-01
    • 2016-12-16
    • 2018-08-15
    相关资源
    最近更新 更多