javascript - 使用 AngularJS/NodeJS 将 PEM 证书添加到 Http 请求

标签 javascript node.js angularjs https restangular

我目前正在开发一个应用程序,该应用程序需要从位于加密网络中的 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);
}

最佳答案

您必须在后端执行此操作,因为前端并不真正存在这种功能。

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

关于javascript - 使用 AngularJS/NodeJS 将 PEM 证书添加到 Http 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25436350/

相关文章:

javascript - 使用 ES6 模块和 CoffeeScript 的首选方式

javascript - Ajax POST 到 Nodejs 给出空白对象

javascript - $myform.textinput.$isvalid 在不应该的时候为真

javascript - 找不到变量 : React

javascript - react native : filtering props?

ruby-on-rails - Node.js 和 Rails 应用程序托管,具有共享 MongoDB 数据库和定价

javascript - 无法让 jquery AJAX 工作 Node js Express

javascript - 我如何将 Baffle.js 与 Angularjs 应用程序结合起来

javascript - 随机错误 "Unexpected token in JSON"

嵌套 lambda 表达式的 Javascript 编码样式