Firebase云功能可在本地运行,但不能在部署后

时间:2018-02-17 14:27:46

标签: javascript firebase google-cloud-functions

我目前正在尝试将Nuxt SSR应用部署到Firebase。

在本地和firebase服务器上一切正常。云功能正确执行并呈现html,没问题。

当我向外部API(Storyblok)添加请求时,会出现问题。我正在使用Blaze计划,所以外部请求应该有效,对吗?

所有内容都使用云函数模拟器在本地工作,并通过firebase serve --only functions,hosting使用外部API请求,但部署后出现错误500.

有没有办法更详细地记录Firbase端可能发生的事情?

云功能:

const functions = require('firebase-functions');
const { Nuxt } = require('nuxt');
const express = require('express');
const app = express();

const config = {
  dev: false,
  buildDir: 'nuxt',
  build: {
    publicPath: '/assets/'
  }
}
const nuxt = new Nuxt(config);

function handleRequest(req, res) {
  res.set('Cache-Control', 'public, max-age=150, s-maxage=150');
  return new Promise((resolve, reject) => {
    nuxt.render(req, res, promise => {
      promise.then(resolve).catch(reject)
    })
  });
}

app.use(handleRequest);
exports.nuxtssr = functions.https.onRequest(app);

2 个答案:

答案 0 :(得分:0)

尝试在Nuxt配置中添加 'authClientCollection' => [ 'class' => 'yii\authclient\Collection', 'clients' => [ 'facebook' => [ 'class' => 'yii\authclient\clients\Facebook', 'authUrl' => 'https://www.facebook.com/dialog/oauth?display=popup', 'clientId' => '2061735130522390', 'clientSecret' => '2f302dc7358730820c091ca4444afbae', 'attributeNames' => ['name', 'email', 'first_name', 'last_name'], ], ], ], ],

debug: true

这将使错误消息显示在浏览器中,而不仅仅是错误500。

答案 1 :(得分:-1)

引用您:

https://firebase.google.com/docs/functions/writing-and-viewing-logs#viewing_logs

使用Firebase CLI可能会有更多详细信息。