【问题标题】:How to use CAS authentication with angular2 webpack starter typescript?如何将 CAS 身份验证与 angular2 webpack starter typescript 一起使用?
【发布时间】:2018-06-01 01:48:43
【问题描述】:

我正在使用以下内容:

https://github.com/gdi2290/angular-starter

我用 npm start 启动应用程序,它使用 webpack 开发服务器。我的问题是我想添加 CAS 身份验证,但不知道去哪里。这是我正在尝试使用的库:

https://github.com/TencentWSRD/connect-cas2

所有示例似乎都使用 express,但我不确定是否可以将它与 webpack-dev-server 一起使用,就像我正在使用的启动器一样?如果是这样,我该如何使用它?还是我需要一个与 npm start 兼容的不同 CAS 库?

【问题讨论】:

    标签: node.js angular webpack webpack-dev-server cas


    【解决方案1】:

    Webpack 更像是一种构建工具,具有最少的服务器功能。它可以提供静态内容,非常适合即时更新内容,并将具有基本路由和客户端逻辑的简单网站组合在一起。

    如果您想要更复杂一点的东西,您将需要服务器端技术。所以 connect-cas2 将要求您使用 node.js 和 express。该文档向您展示了如何设置它。

    我对 connect-cas2 一无所知,但我知道用于身份验证的护照,但它们不会有太大的不同。我会按照快速入门进行操作,如果您有任何问题,请使用您遇到问题或无法理解的代码编辑您的问题。

    我一直在研究,如果您已经在某处设置了 CAS 服务器,您也许可以代理身份验证。我会尝试以下方法:

    // the proxy option is part of the devServer in your webpack.config.js
    devServer: {
        contentBase: 'public',
    
        // setup a proxy
        proxy: {
            // just replace the /cas/validate endpoint to the endpoint in your 
            // website that will trigger the api call
            '/cas/validate': 'https://url-to-your-cas-server.com'
        }
    },
    

    【讨论】:

    • connect-cas2 的文档非常清楚,我想我现在的问题是如何使用我的 OP github.com/gdi2290/angular-starter 中的默认启动项目使用 express。我知道“config/webpack.dev.js”有一些端点/快递的东西,但它不能直接与 connect-cas2 一起使用。
    • Webpack 不使用 express,它建立在 Common.js 库之上。当您配置 div 服务器时,您实际上是在构建一个基本的 express 服务器并使用 webpack 作为中间件来“监视”并构建您的前端项目。
    • 我试图让 webpack 使用 express,但被挂断了。如果您对此有一些见解,那就太好了。 stackoverflow.com/questions/48069757/…
    • 所以你实际上还没有让 webpack 使用 express,而是你需要将 webpack 集成到 express 中。 Here 是我回答的另一个问题。
    • 你只需要在webpack中配置一个代理,你启动你的express服务器,然后使用代理将你的请求转发到你本地的express文件夹进行开发。
    猜你喜欢
    • 2017-02-10
    • 1970-01-01
    • 1970-01-01
    • 2012-04-06
    • 2017-05-11
    • 2021-10-09
    • 2017-01-24
    • 2018-09-28
    • 1970-01-01
    相关资源
    最近更新 更多