请求模块在云功能中崩溃

时间:2017-12-04 13:12:41

标签: firebase request google-cloud-functions google-cloud-vision

我尝试将text_detection发送到照片。但是,现在发生了奇怪的问题。 我发布非常简单的调试程序。

流程是:

1:定义变量(照片,谷歌存储路径,愿景&#url)

2:生成承载令牌。将其添加到ServiceToken。 (参考文献:https://cloud.google.com/vision/docs/auth

3:rbody是Google Cloud Vision的要求。

4:最后,使用Request模块。如果Vision检测到文本,则输出检测结果的json(正文:~~)。

const request = require('request');

var filePath = "Photo01.jpg";
const imagePath = 'gs://***'+filePath;
const urlvision = 'https://vision.googleapis.com/v1/images:annotate';
var ServiceToken;
ServiceToken = "";

//OCR
let rbody = {
    requests: [{
        image: {
            source: {
                imageUri:imagePath
            }
        }, 
        features: [{type: 'TEXT_DETECTION'}]
    }]
};
let headers = {'Content-Type':'application/json'};

console.log(JSON.stringify(rbody));

request.post({
    url: urlvision,
    headers:headers,
    body:JSON.stringify(rbody)
},function(error,response,body){
    console.log("body:"+body);

    console.log("error:"+error);
}).auth(null,null,true,ServiceToken);

在我的本地电脑中,我确认该程序正常工作。因此,我将云功能中的firebase存储处理程序与此程序结合起来。但是,在Cloud函数中,请求模块输出了此错误。

error:TypeError: The header content contains invalid characters

我无法理解这个错误。我认为这个错误表示标题。但标题的变量不会被修改。为什么请求模块的行为在云功能中发生变化?有谁知道细节?

0 个答案:

没有答案