代码之家  ›  专栏  ›  技术社区  ›  William

在Vue.js和Node.js开发环境中测试会话

  •  0
  • William  · 技术社区  · 7 年前

    所以我遇到的问题是:我正在尝试为我的应用程序使用会话,而我知道如何在所有内容都已编译并准备就绪时让它们工作。。。我需要能够在开发过程中测试它们。

    因此,我的Vue、js运行在与node.js后端服务器不同的端口上。问题在哪里,;如何让我的后端使用前端的地址来测试这一点?例如:

    app.get('/', (req, res) => {
        console.log(session);
    });
    

    应该是localhost:5000/(这是我现在使用的端口)。我可能会用完全错误的方式来做这件事,但我希望能够在开发过程中测试这一点,而不是必须编译所有内容并祈祷它能工作。

    如果有帮助的话,我正在使用express sessions。

    谢谢

    编辑: 好吧,我正在尝试代理,但它似乎不起作用。我试着把它放进盒子里 package.json'file, then I read something on 在vue.config.js`文件中,我可以这样做。 这就是我所拥有的:

    module.exports = {
        devServer: {
            proxy: 'http://localhost:5000',
        },
      }
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   Community Mohan Dere    6 年前

    你可以加上 proxy package.json 您的vue.js应用程序。这样应用程序会认为它在同一台服务器上与API通信,但实际上vue.js应用程序的主机只是后端的代理。我的假设是后端应用程序有前缀 api

    {
    ...
        "proxy": {
            "/api/*": {
              "target": "http://localhost:5000"
            }
         }
    }
    

    所以当vue.js应用程序尝试调用 http://localhost:8080/api/hello http://localhost:5000/api/hello . 浏览器将允许该请求。

    编辑

    如果您使用的是Vue CLI v3的新版本,则可以使用嵌入式代理服务器: https://cli.vuejs.org/config/#devserver-proxy

    vue.config.js (如果不存在)包含以下内容:

    module.exports = {
      devServer: {
        proxy: {
          '/api': {
            target: 'http://localhost:5000',
            ws: true,
            changeOrigin: true
          }
        }
      }
    }
    
    推荐文章