【问题标题】:Google Cloud Functions - Nodejs error , forever loadingGoogle Cloud Functions - Nodejs 错误,永远加载
【发布时间】:2018-04-06 06:23:36
【问题描述】:
const request = require('request');

exports.helloWorld = function helloWorld(req, res) {
    var headers = {
    'scheme': 'https',
    'authorization': 'Token 123',
    'user-agent': 'mobile'
    };
    var options = {
        url: 'https://url',
        headers: headers
    };
    function callback(error, response, body) {
    if (!error && response.statusCode == 200) {
        console.log(body);
        res.status(200).send(response.body);
        }
    }
    request(options, callback);
};

我可以毫无问题地提交请求,但是一旦我开始使用标头和选项发出请求,我就无法让它在 Google Cloud Function 上正常工作。

请指教我的错误

触发器类型 : HTTP 触发器

【问题讨论】:

  • 可能'': 'scheme: https',无效
  • @brk 我需要它是 https

标签: javascript node.js google-cloud-platform google-cloud-functions


【解决方案1】:

您使用request 进行的调用很可能会返回错误,因为在错误情况下您不会使用 res.end() 或 res.status(500) 结束函数。 end(),Cloud Functions 不知道你的函数是否完成,所以只运行它直到超时。

试试:

if (!error && response.statusCode == 200) {
  console.log(body);
  res.status(200).send(response.body);
} else {
  console.log(error);
  res.status(500).send(error);
}

您应该会在不挂起 Cloud Function 的情况下收到回复。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-11
    • 2017-09-30
    • 2021-05-08
    • 2018-04-22
    • 2019-07-14
    • 2013-09-19
    • 2018-06-11
    • 2019-06-04
    相关资源
    最近更新 更多